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

    Apple bez varování odstranil ze svého obchodu sociální síť VKontaktě i další aplikace skupiny VK, jako je VK Music nebo VK Video [Novinky.cz].

    Ladislav Hagara | Komentářů: 4
    dnes 14:22 | IT novinky

    V dubnu loňského roku představený poštovní klient Notion Mail bude 22. září ukončen.

    Ladislav Hagara | Komentářů: 2
    dnes 04:33 | Komunita

    Konference OpenAlt 2026 hledá přednášející. Proběhne o víkendu 7. a 8. listopadu na půdě Fakulty informačních technologií VUT v Brně. Témata konference jsou: Otevřený a svobodný software, IoT a Hnutí tvůrců, Vzdělávání, Bezpečnost a soukromí, Otevřená společnost, komunity a data, OpenMobility a další.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | IT novinky

    Společnosti OpenAI a Broadcom oznámily čip optimalizovaný pro AI pojmenovaný Jalapeño.

    Ladislav Hagara | Komentářů: 0
    včera 20:22 | Nová verze

    Deno (Wikipedie), běhové prostředí (runtime) pro JavaScript, TypeScript a WebAssembly, bylo vydáno v nové verzi 2.9. Hlavní novinkou je deno desktop pro převod Deno projektu na desktopovou aplikaci. Jedná se o alternativu k frameworkům Electron nebo Tauri.

    Ladislav Hagara | Komentářů: 2
    včera 15:44 | IT novinky

    Od zítra jsou Datové schránky oficiálně na nové adrese datovka.gov.cz. Adresa mojedatovaschranka.cz zůstává funkční do 27. srpna 2026, následně budou uživatelé automaticky přesměrováni na datovka.gov.cz.

    Ladislav Hagara | Komentářů: 3
    včera 13:44 | Nová verze

    Dolphin (Wikipedie), tj. open source multiplatformní emulátor herních konzolí GameCube a Wii od Nintenda, byl vydán ve verzi 2606. S podporou Game Boy Playeru.

    Ladislav Hagara | Komentářů: 0
    včera 11:11 | Zajímavý software

    Vasudeva Kamath představil utilitu debvulns, alternativu k nativní utilitě debsecan, pro výpis zranitelností v Debianu. Navíc má především možnost výstupu ve strukturovaných formátech JSON a CSV. V plánu je exportér pro Prometheus.

    Ladislav Hagara | Komentářů: 0
    24.6. 21:44 | IT novinky

    Oficiální český státní eshop s elektronickými dálničními známkami nově najdete na edalnice.gov.cz. Doména gov.cz jasně potvrzuje, že jste na oficiálním státním webu [𝕏].

    Ladislav Hagara | Komentářů: 27
    24.6. 14:22 | Nová verze

    Byla vydána nová verze 4.8.0 interaktivního shellu fish (friendly interactive shell, Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 7
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (17%)
     (31%)
     (3%)
     (6%)
     (2%)
     (15%)
     (26%)
    Celkem 1995 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: MySQL trigger nad tabulkou nad kterou se spousti

    1.4.2010 13:39 sillySQL
    MySQL trigger nad tabulkou nad kterou se spousti
    Přečteno: 1247×
    Vytvořil jsem trigger, který nemůže vyvolat loop:
    CREATE TRIGGER tr_usernameSync AFTER UPDATE ON mailbox_base
      FOR EACH ROW BEGIN
        IF (NEW.username != CONCAT(NEW.local_part, '@', NEW.domain)) THEN BEGIN
          UPDATE `mailbox_base` SET `username` = CONCAT(NEW.local_part, '@', NEW.domain);
        END;
        END IF;
      END;
    Ale mysql mi při pokusu o update tabulky zahlásí "#1442 - Can't update table 'mailbox_base' in stored function/trigger because it is already used by statement which invoked this stored function/trigger."

    Zkoušel jsem to obejít tak, že jsem v triggeru volal proceduru na ten update, ale stejně to nefungovalo. Zkouším to rozchodit už nějakou tu hodinku. Mohl by mi někdo poradit co s tím?

    Odpovědi

    1.4.2010 13:51 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: MySQL trigger nad tabulkou nad kterou se spousti
    hmm, ted strelim od boku, ale co takhle zkusit neco jako:
    CREATE TRIGGER tr_usernameSync AFTER UPDATE ON mailbox_base
      FOR EACH ROW BEGIN
        IF (NEW.username != CONCAT(NEW.local_part, '@', NEW.domain)) THEN BEGIN
          NEW.username = CONCAT(NEW.local_part, '@', NEW.domain);
        END;
        END IF;
      END;
    1.4.2010 13:54 sillySQL
    Rozbalit Rozbalit vše Re: MySQL trigger nad tabulkou nad kterou se spousti
    Jo, zrovna sem to chci napsat, jen tam musí být BEFORE.
    CREATE TRIGGER tr_usernameSync BEFORE UPDATE ON mailbox_base
      FOR EACH ROW BEGIN
        IF (NEW.username != CONCAT(NEW.local_part, '@', NEW.domain)) THEN BEGIN
          SET NEW.username = CONCAT(NEW.local_part, '@', NEW.domain);
        END;
        END IF;
      END;
    Tohle funguje. Proč ale nefunguje tamto?
    1.4.2010 13:56 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: MySQL trigger nad tabulkou nad kterou se spousti
    rekl bych ze zavolanim update bys opet vyvolal ten trigger, coz by vedlo k zacykleni
    1.4.2010 13:58 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: MySQL trigger nad tabulkou nad kterou se spousti
    tahle definice by mozna byla lepsi:
    CREATE TRIGGER tr_usernameSync BEFORE UPDATE ON mailbox_case FOR EACH ROW
    1.4.2010 13:55 Ondřej Kopka | skóre: 19 | blog: ondrejk
    Rozbalit Rozbalit vše Re: MySQL trigger nad tabulkou nad kterou se spousti
    pripadne se podivej sem: http://forge.mysql.com/wiki/Triggers, konkretne sekce No when conditions
    1.4.2010 17:08 sillySQL
    Rozbalit Rozbalit vše Re: MySQL trigger nad tabulkou nad kterou se spousti
    Uff, já si dával pozor aby nevznikl loop kvůli tomu update a už vůbec jsem si neuvědomil že ten samotný trigger vyvolává loop. :-)

    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.