abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

dnes 12:33 | Zajímavý software

Článek ne Medium představuje nejnovější stabilní verzi 2.0 svobodné decentralizované mikroblogovací platformy a sociální sítě podobné Twitteru Mastodon (Wikipedie). Detailní přehled novinek na GitHubu [Hacker News].

Ladislav Hagara | Komentářů: 0
dnes 06:00 | Komunita

V Praze na půdě Elektrotechnické fakulty ČVUT dnes probíhá RT-Summit 2017 – setkání vývojářů linuxového jádra a uživatelů jeho real-time verze označované jako preempt-rt. Přednášky lze sledovat online na YouTube.

Ladislav Hagara | Komentářů: 0
včera 14:33 | Zajímavý projekt

Blender Animation Studio zveřejnilo první epizodu z připravovaného animovaného seriálu The Daily Dweebs o domácím mazlíčkovi jménem Dixey. Ke zhlédnutí také ve 3D s rozlišením 8K.

Ladislav Hagara | Komentářů: 0
včera 12:34 | Komunita

Aktualizovanou počítačovou hru Warhammer 40,000: Dawn of War III v ceně 39,99 eur běžící také na Linuxu lze o víkendu na Steamu hrát zdarma a případně ještě v pondělí koupit s 50% slevou. Do soboty 19:00 lze na Humble Bundle získat zdarma Steam klíč k počítačové hře Sid Meier's Civilization® III v ceně 4,99 eur běžící také ve Wine.

Ladislav Hagara | Komentářů: 0
včera 00:22 | Nasazení Linuxu

Společnost Samsung oznámila, že skrze dokovací stanici DeX a aplikaci Linux on Galaxy bude možno na Samsung Galaxy S8 a S8+ a Galaxy Note 8 provozovat Linux. Distribuce nebyly blíže upřesněny.

Phantom Alien | Komentářů: 19
19.10. 23:55 | Komunita

Společnost Purism na svém blogu oznámila, že její notebooky Librem jsou nově dodávány se zrušeným (neutralized and disabled) Intel Management Engine (ME). Aktualizací corebootu na již prodaných noteboocích lze Management Engine také zrušit. Více v podrobném článku.

Ladislav Hagara | Komentářů: 0
19.10. 21:44 | Nová verze

Organizace Apache Software Foundation (ASF) na svém blogu slaví páté výročí kancelářského balíku Apache OpenOffice jako jejího Top-Level projektu. Při této příležitosti byl vydán Apache OpenOffice 4.1.4 (AOO 4.1.4). Podrobnosti v poznámkách k vydání. Dlouhé čekání na novou verzi tak skončilo.

Ladislav Hagara | Komentářů: 6
19.10. 19:22 | Pozvánky

Již příští týden - 26. a 27. října se v Praze v hotelu Olšanka odehraje OpenWRT Summit. Na webu konference naleznete program a možnost zakoupení lístků - ty stojí 55 dolarů. Čtvrtek bude přednáškový a v pátek se budou odehrávat převážně workshopy a meetingy.

Miška | Komentářů: 1
19.10. 13:44 | Nová verze

Bylo vydáno Ubuntu 17.10 s kódovým názvem Artful Aardvark. Ke stažení jsou Ubuntu Desktop a Server, Ubuntu Cloud Images, Ubuntu Netboot, Kubuntu, Lubuntu a Lubuntu Alternate, Lubuntu Next, Ubuntu Budgie, Ubuntu Kylin, Ubuntu MATE, Ubuntu Studio a Xubuntu. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 22
19.10. 13:00 | Komunita

MojeFedora.cz informuje, že Fedora 27 dostane podporu pro AAC. Podpora multimediálních formátů je ve výchozí instalaci Fedory tradičně limitovaná kvůli softwarovým patentům, ale desktopový tým Red Hatu se ji i tak snaží v poslední době co nejvíce rozšířit. Už nějaký čas obsahuje kodeky pro MP3, H.264, AC3 a nyní byl přidán také kodek pro další velmi rozšířený zvukový formát – AAC.

Ladislav Hagara | Komentářů: 2
Jak se vás potenciálně dotkne trend odstraňování analogového audio konektoru typu 3,5mm jack z „chytrých telefonů“?
 (10%)
 (1%)
 (1%)
 (1%)
 (75%)
 (13%)
Celkem 160 hlasů
 Komentářů: 7, poslední 19.10. 23:06
    Rozcestník

    Dotaz: Datový typ varchar - univerzální podporované všemi DB

    2.7.2011 18:51 hispik
    Datový typ varchar - univerzální podporované všemi DB
    Přečteno: 1082×
    Dobrý den. Snažím se postavit aplikaci tak, aby mohla fungovat se všemi běžně používanými relačními databázemi - konkrétně mysql, postgresql, firebird, oracle, sqlite, mssql. Proto se snažím najít takové datové typy, které podporují pokud možno podobně všechny tyto databáze. Myslím, že nebudu mít problém s INTem, datem a časem, ale problém by mohl vzniknout s textovým datovým typem. Zatím to stavím nad mysql (protože toho podporuje relativně málo a dobře se to upravuje pro ostatní rdbms) a tam je VARCHAR podle collation case sensitive i insensitive, v postgresql je standardně jen CS (ale dá se přidat i CI), u ostatních RDBMS jsem trochu zmaten (i z manuálů). Netušíte někdo jak jsou na tom ostatní databázové stroje a na jaké další omezení bych si měl dávat pozor? Mým cílem je u VARCHARU podpora utf8 a nějaké univerzální řazení a porovnávání - univerzálním myslím, že všechny musí toto podporovat stejně - je mi jedno jestli CS nebo CI, ale stejně. Na co bych to měl normalizovat?

    Řešení dotazu:


    Odpovědi

    2.7.2011 20:32 Kit
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    Hledání univerzálního řešení je cestou do pekel. Každá databáze má jiné výhody a používáním standardu ANSI SQL se tyto výhody do jisté míry stírají. Je možné nadstandardní záležitosti omezit, ale úplně se jich zbavovat by byla škoda.

    V ANSI je NVARCHAR(n).
    2.7.2011 20:37 hispik
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    No a co to case sensitivity?
    okbob avatar 2.7.2011 22:02 okbob | skóre: 30 | blog: systemakuv_blog | Benešov
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    MSSQL nepodporuje utf8 - pro podporu UTF musite pouzit nvarchar, ktery zase neni podporovan v PostgreSQL.

    Pristup, ktery jste zvolil, neni uplne nejstastnejsi. Rozumnejsi je pouzit treba sve jednoduche API, kterym obalite db operace, a uvnitr ktereho rozdily mezi jednotlivymi db skryjete.
    2.7.2011 22:23 l0gik | skóre: 22
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    A SQL skripty na vytvoření db generujte pomocí PHP. Takové věci jako typ varchar pak vyřešíte pomocí jednoduchýho konfiguráku...
    3.7.2011 02:15 hispik
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    Svoje API mám. Mě jde jen o to, aby fungovaly stejně základní operace nad daty tj. řazení, porovnávání, vyhledávání. Řazení bych mohl implementovat tak, že bych do svojí aplikace načetl všechny řádky z db, pak seřadit a zobrazil, to samé u porovnávání a vyhledávání, ale to není nejšťastnější.
    3.7.2011 08:41 Kit
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    Takové použití databáze je úplně zcestné. Pokud bys chtěl řadit záznamy až ve skriptu, databázi zřejmě nepotřebuješ. Klidně bys mohl použít FS s utilitami nebo KVS.

    l0gik ti navrhl, abys generoval SQL PHP skriptem. V tom skriptu můžeš podchytit odlišnosti jednotlivých SŘBD. Také můžeš zkusit ODBC nebo PDO. Ovšem pokud máš choutky řadit záznamy z databáze ve skriptu, zřejmě nemáš mnoho dat. Pokud chceš univerzální řešení, místo databáze použij raději XML a XSLT.

    Univerzální nástroj neexistuje. Měl by ses s tím smířit.
    pavlix avatar 3.7.2011 10:16 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    Pokud chceš univerzální řešení, místo databáze použij raději XML a XSLT.
    Tak za to ti určitě poděkuje :). XSLT je krásná věc pro ty, kteří potřebují promrhat spoustu času.
    xkucf03 avatar 3.7.2011 11:30 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    To bych ani neřekl :-) Akorát je to úplně jiný přístup k datům než relační (byť se tam nějaké analogie dají najít).

    Původnímu tazateli bych doporučil se podívat na hotová řešení – ORM (Hibernate) nebo aplikace, které fungují nad více různými SŘBD (Drupal). Psát něco takového na koleně není úplně triviální.
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    pavlix avatar 3.7.2011 19:18 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    Mně se to před časem zalíbilo... hrál jsem si s tím... ale v reálných případech jsem obvykle místo XSLT použil nějaký obecný programovací jazyk, a pokud to šlo tak místo XML nějaký rozumnější formát na uložení dat.
    3.7.2011 12:26 Kit
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    Napsal jsem si pokusné diskusní fórum v XSLT a funguje velmi rychle i při velké zátěži. Netvrdím, že je to univerzální zázrak, ale pro menší objemy dat je to často výhodnější řešení, než použití databází. Zejména tam, kde je čtení mnohem častější, než zápis (drtivá většina webů).
    3.7.2011 12:59 hispik
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    Já jsem NEPSAL, že to chci řadit přímo v aplikaci, já psal že je to nevhodné. Mě jde o toto:
    příklad mysql:

    pokud budu chtít řadit podle sloupce "jméno" česky, pak musí být tento sloupec v utf8_collate_cs a je hotovo, nebo v utf8_bin a pak provádět order by convert using ... a je hotovo atd. Tzn. hledám takové řešení, které by bylo pro databáze podobné, abych nemusel u každé speciálně měnit logiku celého dotazu tzn. jednou mám sloupec přímo v požadovaném collate, podruhé převádím do pož. collate apod., tzn. hledám nějaký nejvíce společný "znak", který podporují různé databázové stroje (hlavně proto, že konvertování něco stojí i s f. indexy).
    3.7.2011 15:34 kuka
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    Zrovna toto se myslim mezi databazemi celkem dost odlisuje. Konkretne v Oracle lze radit a porovnavat celkem jakkoliv (case sensitive, insensitive, podle locale). Pro nektere situace staci mit nastavene vlasnosti session, pro nektere scenare je ale treba uvadet to primo do dotazu (napr. pri pouziti like). Asi bych se snazil maximalne vyjit z SQL normy a specificke pozadavky resit pripadne rozpadem kodu dle pouzite databaze - pokud potrebujes neco specialniho tak se tomu proste nevyhnes (pokud to nepresunes na aplikacni vrstvu).
    pavlix avatar 3.7.2011 19:22 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    Netvrdím, že je to univerzální zázrak, ale pro menší objemy dat je to často výhodnější řešení, než použití databází.
    Trošku mi vadí, když se ve větě porovnává konkrétní formát nějaké databáze s databází obecně. Svět ukládání dat je široký a takhle je to strašně zavádějící.
    Zejména tam, kde je čtení mnohem častější, než zápis (drtivá většina webů).
    No... nevím... zkoušel jsi v reálu srovnat rychlost tahání dat z XML pomocí XSLT a za relační databáze SQLite? Ona totiž SQLite při čtení nemusí být vůbec špatná. A další věc je, že to nejsou jediné dva přístupy... a já bych často zvolil řešení, které se rychleji napíše a bude třeba i pomalejší (zvlášť v případech, kdy tu rychlost uživatel nepozná).
    xkucf03 avatar 3.7.2011 19:33 xkucf03 | skóre: 46 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    a já bych často zvolil řešení, které se rychleji napíše
    Přesně k tomu někdy používám XSLT – jednoúčelová šablona se dá uplácat velmi rychle a není potřeba to moc řešit a pak ji akorát pustíš v jEditu nebo pomocí Antu a je to – rychlejší než něco normálně programovat. Např. jsem takhle dělal převod MIBů (SNMP) do nějakého proprietárního XML formátu – snadno a rychle a to se vyplatí :-)

    (tím tedy nechci říct, že by se XSLT hodilo jen na tyhle věci)
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-Výuka.cz, Nekuřák.net
    pavlix avatar 3.7.2011 19:43 pavlix | skóre: 54 | blog: pavlix
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    Přesně k tomu někdy používám XSLT – jednoúčelová šablona se dá uplácat velmi rychle a není potřeba to moc řešit a pak ji akorát pustíš v jEditu nebo pomocí Antu a je to – rychlejší než něco normálně programovat.
    Asi holt každý máme jiné vysledky... když jsem srovnával svoji práci v XSLT a Python/libxml2, tak to druhé bylo na většinu úloh, co jsem potřeboval, rychlejší na napsání. A to jsem dokonce s XSLT měl delší zkušenost než s tím libxml2.

    Takže, XSLT je hodně zajímavé, nejspíš se časem dostanu k tomu ho zase na něco použít, ale jednak mi práce s ním na mnoho věcí vůbec nepřijde rychlejší než třeba ten Python (i když bych našel věci, kde ano, ale nebývá to ukládání dat), a druhak to nemá do téhle diskuze žádnou vypovídací hodnotu.

    Vypovídací hodnotou to nemá proto, že jakmile máš něco už spraseno do XML, tak se ti úplně změní situace. Tzn to, co funguje líp na XML (pokud vůbec), nemusí líp fungovat na data obecně. A musím říct, JSON mi na ukládání strukturovaných dat vychází většinou daleko lépe než XML, když už se teda bavíme o textových souborových formátech (versus binárních současně přistupované databáze či socketové databáze).
    Josef Kufner avatar 3.7.2011 12:51 Josef Kufner | skóre: 67
    Rozbalit Rozbalit vše Re: Datový typ varchar - univerzální podporované všemi DB
    Koukni na dibi (perlička) a podobná udělátka. Ty tě odstíní od hromady drobných odlišností. SQL pak nebude soubor obsahující dotazy, ale jednoduchý skript, jak už bylo řečeno předemnou. A vůbec doporučuju si udělat jednoduchý instalátor, který se o databázi postará automaticky a integrovat ho do aplikace.

    Co se zpracování textu týče, je na to MySQL velice dobře a i podstatně lépe než mnohé "lepší" databáze.

    Omezovat se jen na společné vlastnosti všech podporovaných databází ti přinese víc problémů než užitku. Dobře vyřeš zvládání odlišností a bude ti hej.
    Hello world ! Segmentation fault (core dumped)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.