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 14:44 | Nová verze

    Byla vydána nová verze 4.6 (𝕏, Bluesky, Mastodon) multiplatformního open source herního enginu Godot (Wikipedie, GitHub). Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    dnes 13:33 | Humor

    Rozsáhlá modernizace hardwarové infrastruktury Základních registrů měla zabránit výpadkům digitálních služeb státu. Dnešnímu výpadku nezabránila.

    Ladislav Hagara | Komentářů: 2
    dnes 13:11 | Nová verze

    Čínský startup Kimi představil open-source model umělé inteligence Kimi K2.5. Nová verze pracuje s textem i obrázky a poskytuje 'paradigma samosměřovaného roje agentů' pro rychlejší vykonávání úkolů. Kimi zdůrazňuje vylepšenou schopnost modelu vytvářet zdrojové kódy přímo z přirozeného jazyka. Natrénovaný model je dostupný na Hugging Face, trénovací skripty však ne. Model má 1 T (bilion) parametrů, 32 B (miliard) aktivních.

    NUKE GAZA! 🎆 | Komentářů: 1
    dnes 09:00 | IT novinky

    V Raspberry Pi OS lze nově snadno povolit USB Gadget Mode a díky balíčku rpi-usb-gadget (CDC-ECM/RNDIS) mít možnost se k Raspberry Pi připojovat přes USB kabel bez nutnosti konfigurování Wi-Fi nebo Ethernetu. K podporovaným Raspberry Pi připojeným do USB portu podporujícího OTG.

    Ladislav Hagara | Komentářů: 0
    dnes 03:33 | Komunita

    Konference Installfest 2026 proběhne o víkendu 28. a 29. března v budově FELu na Karlově náměstí v Praze. Přihlásit přednášku nebo workshop týkající se Linuxu, otevřených technologií, sítí, bezpečnosti, vývoje, programování a podobně lze do 18. února 0:15.

    Ladislav Hagara | Komentářů: 0
    dnes 03:22 | Komunita

    Fedora Flock 2026, tj. konference pro přispěvatele a příznivce Fedory, bude opět v Praze. Proběhne od 14. do 16. června. Na Flock navazuje DevConf.CZ 2026, který se uskuteční 18. a 19. června v Brně. Organizátoři konferencí hledají přednášející, vyhlásili Call for Proposals (CfP).

    Ladislav Hagara | Komentářů: 0
    dnes 03:11 | Zajímavý software

    Z80-μLM je jazykový model 'konverzační umělé inteligence' optimalizovaný pro běh na 8-bitovém 4Mhz procesoru Z80 s 64kB RAM, technologii z roku 1976. Model používá 2-bitovou kvantizaci a trigramové hashování do 128 položek, což umožňuje zpracování textu i při velmi omezené paměti. Natrénovaný model se vejde do binárního souboru velkého pouhých 40 KB. Tento jazykový model patrně neprojde Turingovým testem 😅.

    NUKE GAZA! 🎆 | Komentářů: 2
    včera 17:44 | IT novinky

    Digitální a informační agentura (DIA) na přelomu roku dokončila rozsáhlou modernizaci hardwarové infrastruktury základních registrů. Projekt za 236 milionů korun by měl zabránit výpadkům digitálních služeb státu, tak jako při loňských parlamentních volbách. Základní registry, tedy Registr práv a povinností (RPP), Informační systém základních registrů (ISZR) a Registr obyvatel (ROB), jsou jedním z pilířů veřejné správy. Denně

    … více »
    Ladislav Hagara | Komentářů: 5
    včera 17:33 | IT novinky

    Evropská komise (EK) zahájila nové vyšetřování americké internetové platformy 𝕏 miliardáře Elona Muska, a to podle unijního nařízení o digitálních službách (DSA). Vyšetřování souvisí se skandálem, kdy chatbot s umělou inteligencí (AI) Grok na žádost uživatelů na síti 𝕏 generoval sexualizované fotografie žen a dětí. Komise o tom dnes informovala ve svém sdělení. Americký podnik je podezřelý, že řádně neposoudil a nezmírnil rizika spojená se zavedením své umělé inteligence na on-line platformě.

    Ladislav Hagara | Komentářů: 11
    včera 15:11 | Komunita

    Bratislava OpenCamp pokračuje vo svojej tradícii a fanúšikovia otvorených technológií sa môžu tešiť na 4. ročník, ktorý sa uskutoční 25. 4. 2026 na FIIT STU v Bratislave. V súčasnosti prebieha prihlasovanie prednášok a workshopov – ak máte nápad, projekt, myšlienku, o ktoré sa chcete podeliť s komunitou, OpenCamp je správne miesto pre vás.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (18%)
     (6%)
     (0%)
     (10%)
     (22%)
     (3%)
     (5%)
     (2%)
     (12%)
     (33%)
    Celkem 640 hlasů
     Komentářů: 17, poslední 22.1. 15:24
    Rozcestník

    Dotaz: QSqlQuery prepare

    xxxxxx avatar 2.6.2016 12:07 xxxxxx | skóre: 23
    QSqlQuery prepare
    Přečteno: 460×
    Zdravím,

    mám v Qt připojenou MySQL a nějak mi nejde do hlavy, jak to přesně funguje. Samozřejmě jsem prolezl Qt dokumentaci i SO, ale nic mi neodpovědělo.
    QSqlQuery query;
    
    QString prod_id = "blabla";
    
    query.exec("SELECT pictures FROM products WHERE id='" + prod_id + "';");
    
    // Funguje, query.next() je OK, hodnotu "pictures" dostanu
    
    QSqlQuery query;
    
    QString prod_id = "blabla";
    
    query.prepare("SELECT pictures FROM products WHERE id=:prod_id;");
    query.bindValue(":prod_id", prod_id);
    query.exec();
    
    // exec funguje, ale query.next() nic
    
    QSqlQuery query;
    
    QString prod_id = "blabla";
    
    auto db = QSqlDatabase::database();
    
    db.transaction();
    
    query.prepare("SELECT pictures FROM products WHERE id=:prod_id;");
    query.bindValue(":prod_id", prod_id);
    query.exec();
    
    db.commit();
    
    // Všechno funguje, hodnotu pictures dostanu
    
    Tedy rád bych věděl, proč 2. příklad nefunguje a proč je zapotřebí transakce? Ke stejné DB se připojuji ještě z PHP, kde prepare funguje bez transakce.

    Řešení dotazu:


    Odpovědi

    2.6.2016 16:19 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    Qt neznám, ale myslím si, že úplně stejně jako v PHP metoda prepare() vytvoří novou instanci, na kterou je následně bindují parametry. Tedy nikoli na objekt query, ale na objekt vytvořený v jeho továrně.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    xxxxxx avatar 2.6.2016 17:16 xxxxxx | skóre: 23
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    Bohužel, tady prepare vrací bool a podle dokumentace by to mělo fungovat, jako v tom 2. příkladu, jenže nefunguje.
    2.6.2016 17:52 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    V původním dotazu vidím, že prod_id je typu string. Neměl by to být integer?
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    xxxxxx avatar 2.6.2016 17:57 xxxxxx | skóre: 23
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    Nn, to tak má být, id tady může obsahovat jakékoliv znaky, takže je to varchar.
    Řešení 1× (xxxxxx (tazatel))
    skunkOS avatar 3.6.2016 08:35 skunkOS | skóre: 27 | blog: Tak nějak
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    Radím vytvářet QSqlQuery objekt přes tento konstruktor.

    http://martinrotter.github.io
    xxxxxx avatar 3.6.2016 11:17 xxxxxx | skóre: 23
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    Díky, tohle funguje :) Ale proč to funguje? Čekal bych, že si QSqlQuery automaticky vezme tu jedinou DB, ke které jsem připojen.
    3.6.2016 14:18 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    Proč by měl? Singletony už nefrčí.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    xxxxxx avatar 3.6.2016 14:32 xxxxxx | skóre: 23
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    Proto:

    QSqlQuery::QSqlQuery(QSqlDatabase db)

    Constructs a QSqlQuery object using the database db. If db is invalid, the application's default database will be used.

    Ale to mi pořád neodpovídá na to, proč to s transakcí nebo bez prepare() funguje i bez odkazu na existující DB.
    3.6.2016 15:15 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    Bude to nejspíš bug, který by se měl ohlásit vývojářům. Dosud na něj nejspíš nikdo nenarazil proto, že začátečníci obvykle nepoužívají prepared statements a pokročilí zase nepoužívají defaultní databázi.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    xxxxxx avatar 3.6.2016 15:52 xxxxxx | skóre: 23
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    A jaký je důvod ji nepoužívat? Od startu aplikace až do konce se bude používat jen jedna. Tím, že ji odliším pojmenováním si akorát do kódu přidám nutnost na tu DB odkazovat tím jménem. Když to udělám, nebude to pak svádět k tomu myslet si, že někde existuje ještě další? Nebo kvůli pozdějšímu případnému přidání další? Nebo jak to udělat lépe?
    3.6.2016 16:08 Kit | skóre: 46 | Brno
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    Například kvůli TDD. Obvykle se na testy používá jiná databáze, resp. mock. Je důležité vykopat vnější závislosti ven z objektů.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
    xxxxxx avatar 3.6.2016 16:42 xxxxxx | skóre: 23
    Rozbalit Rozbalit vše Re: QSqlQuery prepare
    OK, díky :)

    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.