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:55 | IT novinky

    ChatGPT může vidět, slyšet a mluvit.

    Ladislav Hagara | Komentářů: 2
    dnes 14:33 | Zajímavý software

    Upscaler je open source nástroj pro zvýšení rozlišení a vylepšení obrázků pomocí AI. Vývoj probíhá na GitLabu. Instalovat lze také z Flathubu. Stejně jako Upscayl je Upscaler postaven nad Real-ESRGAN.

    Ladislav Hagara | Komentářů: 0
    dnes 12:11 | Nová verze

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.20.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

    Ladislav Hagara | Komentářů: 0
    dnes 11:55 | Komunita

    V Dublinu o víkendu proběhla dvanáctá iterace multimediální konference Video Dev Days, kterou pravidelně pořádá nezisková organizace VideoLAN. Záznamy přednášek z prvního a druhého dne jsou dostupné na YouTube.

    elenril | Komentářů: 0
    včera 20:44 | Nová verze

    LibrePCB, tj. svobodný multiplatformní softwarový nástroj pro návrh desek plošných spojů (PCB), dospěl po pěti letech vývoje do verze 1.0.0. Přehled novinek v příspěvku na blogu a v aktualizované dokumentaci. Zdrojové kódy jsou k dispozici na GitHubu pod licencí GPLv3.

    Ladislav Hagara | Komentářů: 0
    23.9. 16:55 | IT novinky

    Facebook má nové logo. Poznáte rozdíl?

    Ladislav Hagara | Komentářů: 6
    23.9. 15:55 | Nová verze

    Byla vydána nová verze 7.2 v Javě napsané aplikace pro komplexní návrh rozmístění nábytku a dalšího vybavení v interiérech Sweet Home 3D. Vyzkoušet lze online verzi. Před dvěma týdny vyšla placená verze pro chytré telefony a tablety (App Store, Google Play).

    Ladislav Hagara | Komentářů: 5
    22.9. 14:11 | Pozvánky

    Zítra 23. září proběhne Maker Faire Mladá Boleslav, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    22.9. 13:33 | Nová verze

    Byla vydána beta verze Ubuntu 23.10 s kódovým názvem Mantic Minotaur. Přehled novinek v poznámkách k vydání. Dle plánu by Ubuntu 23.10 mělo vyjít 12. října 2023.

    Ladislav Hagara | Komentářů: 10
    22.9. 11:22 | Zajímavý článek

    Josef Průša informuje o nových verzích firmwarů pro tiskárny Original Prusa, 5.0.0 pro MK4 a MK3.9 a 5.1.0-alpha1 pro MINI, díky kterým jsou tiskárny mnohem rychlejší.

    Ladislav Hagara | Komentářů: 0
    Knihy s linuxovou tematikou
     (19%)
     (15%)
     (50%)
     (27%)
    Celkem 275 hlasů
     Komentářů: 11, poslední 17.9. 19:19
    Rozcestník

    Dotaz: SLQ dotazy jen jako

    10.10.2011 17:28 Dědek
    SLQ dotazy jen jako
    Přečteno: 472×
    Ahoj, neví někdo jak se jmenuje ta funkce které provede sql dotaz ale fyzicka data nevloží, nepřepíše, nesmaže atd.. jen vrátí jestli je všechno ok a požadovaný sql dotaz jde bez chyby vykonat.. Díky za pomoc

    Odpovědi

    Pavel Stárek avatar 10.10.2011 17:42 Pavel Stárek | skóre: 44 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Nevím tedy v jaké databázi, ale na to je asi dobré použít transakce. V MySQL třeba takto: http://dev.mysql.com/doc/refman/5.1/en/commit.html
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    10.10.2011 17:42 kuka
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    A v jakem prostredi by "ta funkce" mela byt?
    10.10.2011 17:54 Dědek
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Acho jo, omlouvám se. Jedná se o MYSQL a bylo by to voláno z PHP
    10.10.2011 18:25 Sten
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    EXPLAIN dotaz
    10.10.2011 18:45 Dědek
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Jako takto?
    $sql = EXPLAIN . "UPDATE table SET status = 999 WHERE user = 1";
    
    mysql_query($sql);
    
    Jendа avatar 11.10.2011 05:22 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    PHP Notice:  Use of undefined constant EXPLAIN - assumed 'EXPLAIN' in - on line 2
    V PHP dáváme řetězce do "", jinak může jít o konstantu.
    11.10.2011 15:21 Sten
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    $sql = "EXPLAIN UPDATE table SET status = 999 WHERE user = 1"
    $result = mysql_query($sql);
    Kromě simulace toho příkazu vám to ještě řekne, kolik dat by se změnilo, jaké klíče a jaké tabulky by se použily a vůbec jak optimální ten dotaz je.
    10.10.2011 21:24 smajl | skóre: 3
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako

    nastavit mysql aby automaticky ne-COMMITovalo transakcie -> SET autocommit=0;
    zacat transakciu -> START TRANSACTION
    spustit query (select/update/insert/...)
    zaznamenat vysledok query (netusim ci chcete validovat spravnost prikazu alebo zistovat ci dany prikaz ovplyvni XY zaznamov)
    zrusit transakciu -> ROLLBACK

    10.10.2011 22:16 kuka
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Problem je samozrejme v tom, ze tazatel nespecifikoval, co vlastne chce. Nicmene toto je hodne drsny zpusob, jak neco overovat, a to nejen z hlediska vykonu. A v principu toho moc neresi, protoze po rollbacku a overeni, ze je "vse v poradku" to znovu uz probehnout nemusi. Kazdopadne potreba overeni "ze to projde" je sama o sobe podezrela a obvykle ukazuje na nepovedeny query factoring apod.
    10.10.2011 23:12 Dědek
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    No potrebuji asi tohle...
    1 ulozim do mysql data
    2 poslu oznameni na email
    3 ulozim do mysql jina data
    4 uložim do mysql jeste jina data
    pokud s techto 4 moznosti selze je cely proces uplne k nicemu, proto jsem to chtel nejak osetrit.
    10.10.2011 23:51 kuka
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Aha. A co tedy s tim odeslanym emailem, kdyz sleze bod 4? Musis si rozmyslet vsechny scenare a pak se da bavit o technologickem reseni. Napriklad pokud mezi temi body nejsou zadne prodlevy, tak by asi bylo lepsi poslat email az na konec, stejne pravdepodobne nedojde driv, nez ty operace na databazi skonci. Ostatne doruceni mailu nejde bez akce na strane adresata nijak overit, takze je obvykle uplne jedno, kdy se odesle.
    11.10.2011 02:35 Dědek
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    To je úplně jedno kdy se odešle, stejně to nevyřeší ostatní problémy. Co když selže ukládání bod 4? Co s těma 3 předchozíma v mysql, budou k ničemu :(
    11.10.2011 10:01 kuka
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Na to se muze pouzit transakce, tzn. bud se provede vsechno, nebo nic, to databaze umi. Co nikdo neumi je vzit zpet odeslani mailu, proto zalezi na tom, kdy se v celem procesu odesle.
    11.10.2011 10:48 Ivan
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Jednoduse. Misto toho aby mail "odeslal", tak ho vlozi do fronty (fronta = tabulka v DB) a z ty fronty to asynchronne vyzvedne dalsi proces. Takhle to delaji databaze, ktere maji podporu pro SMTP.

    11.10.2011 11:07 kuka
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    No a to je to co jsem radil, odesle se to proste az na konci. Podstatne je, ze skutecne poslani mailu nejde "odrolovat". Bud s nim pockam a jen si ho poznamenam (coz neni odeslani mailu), ale pak nevim, jestli se mi nakonec povede, nebo ho udelam, povede se, ale pak uz ho nezrusim. Jesli na to pouzivam tabulku v databazi nebo neco jineho na to nema vliv.
    11.10.2011 08:05 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Přesně k tomuhle se používají transakce. V případě transakce přes víc prostředí pak transakce s dvoufázovým commitem.
    11.10.2011 14:25 l0gik | skóre: 22
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Jenže principiální problém je v tom, že odeslání mailu nejde verifikovat nikdy. V tom případě se mi zdá nejlepší řešení se tvářit, jako že ten mail poslat jde vždy.
    11.10.2011 15:09 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Odeslání e-mailu verifikovat jde, záleží na tom, jak nadefinujete odeslání e-mailu. A třeba definice „lokální MTA převzal e-mail do své fronty“ je pro většinu případů použitelná.
    11.10.2011 19:29 l0gik | skóre: 22
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Jenže takováto informace je naprosto k ničemu. Úplně stejně mohu tento mail převzít do fronty v databázi: zaručuje mi to naprosto stejnou šanci, že mail bude odeslán, ale zároveň neztratím výhodu jedné transakce.
    12.10.2011 08:29 Filip Jirsák | skóre: 68 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: SLQ dotazy jen jako
    Šance na odeslání z nějakého rozumného MTA bude asi přeci jen větší (databáze nebývají tak vyladěné a otestované pro odesílání e-mailů jako poštovní programy). Výhodu jedné transakce neztrácím ani při použití fronty MTA, transakce přece nemusí být čistě databázová. Fronta v databázi je samozřejmě také možné řešení, ale pro tento případ je nejspíš zbytečně složité. Tady stačí začít transakci, provést SQL příkazy, odeslat e-mail, a když se vše podaří, transakci do DB commitnout.

    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.