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í
×
    včera 21:22 | Nová verze

    Bylo vydáno Eclipse IDE 2025-09 aneb Eclipse 4.37. Představení novinek tohoto integrovaného vývojového prostředí také na YouTube.

    Ladislav Hagara | Komentářů: 0
    včera 18:22 | IT novinky

    T-Mobile od 15. září zpřístupňuje RCS (Rich Communication Services) zprávy i pro iPhone.

    Ladislav Hagara | Komentářů: 1
    včera 13:22 | IT novinky

    Společnost ARM představila platformu Arm Lumex s Arm C1 CPU Cluster a Arm Mali G1-Ultra GPU pro vlajkové chytré telefony a počítače nové generace.

    Ladislav Hagara | Komentářů: 0
    včera 05:44 | Nová verze

    Unicode Consortium, nezisková organizace koordinující rozvoj standardu Unicode, oznámila vydání Unicode 17.0. Přidáno bylo 4 803 nových znaků. Celkově jich je 159 801. Přibylo 7 nových Emoji.

    Ladislav Hagara | Komentářů: 0
    9.9. 21:00 | IT novinky Ladislav Hagara | Komentářů: 10
    9.9. 18:33 | Nová verze

    Realtimová strategie Warzone 2100 (Wikipedie) byla vydána ve verzi 4.6.0. Podrobný přehled novinek, změn a oprav v ChangeLogu na GitHubu. Nejnovější verzi Warzone 2100 lze již instalovat také ze Snapcraftu a Flathubu.

    Ladislav Hagara | Komentářů: 1
    9.9. 12:22 | IT novinky

    Polské vývojářské studio CD Projekt Red publikovalo na Printables.com 3D modely z počítačové hry Cyberpunk 2077.

    Ladislav Hagara | Komentářů: 1
    9.9. 11:44 | Pozvánky

    Organizátoři konference LinuxDays 2025 vydali program a zároveň otevřeli registrace. Akce se uskuteční 4. a 5. října na FIT ČVUT v pražských Dejvicích, kde vás čekají přednášky, workshopy, stánky a spousta šikovných lidí. Vstup na akci je zdarma.

    Petr Krčmář | Komentářů: 7
    8.9. 22:00 | IT novinky

    Uživatelé komunikátoru Signal si mohou svá data přímo v Signalu bezpečně zálohovat a v případě rozbití nebo ztráty telefonu následně na novém telefonu obnovit. Zálohování posledních 45 dnů je zdarma. Nad 45 dnů je zpoplatněno částkou 1,99 dolaru měsíčně.

    Ladislav Hagara | Komentářů: 0
    8.9. 18:44 | Zajímavý článek

    Server Groklaw, zaměřený na kauzy jako právní spory SCO týkající se Linuxu, skončil před 12 lety, resp. doména stále existuje, ale web obsahuje spam propagující hazardní hry. LWN.net proto v úvodníku připomíná důležitost zachovávání komunitních zdrojů a upozorňuje, že Internet Archive je také jen jeden.

    🇵🇸 | Komentářů: 30
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (2%)
     (4%)
     (2%)
    Celkem 162 hlasů
     Komentářů: 12, poslední včera 13:00
    Rozcestník

    Dotaz: Audit trails nad jedinou MySQL tabulkou?

    14.1.2015 03:13 Harvie.CZ
    Audit trails nad jedinou MySQL tabulkou?
    Přečteno: 397×
    Ahoj, resim nasledujici problem.

    Snazim se navrhnout nejakej elegantni system pro "audit trails" v databazi. Momentalne to funguje takhle:
    • V tabulce jsou krome ID i timestamp sloupce plati_od a plati_do. Tyhle 3 spolu tvori uniq index.
    • Pokud se v tabulce vytvori nova polozka, tak se plati_od nastavi na NOW() a plati_do se nastavi na NULL.
    • Pokud se z tabulky cte, tak se pouziva WHERE plati_do IS NULL
    • Pokud se neco maze, tak se pouze plati_do updatne na NOW()
    • Pokud se neco updatuje, tak se nastavi neNULLovy plati_do stejne jako pri mazani a nova verze se ulozi s NULLovym plati_do
    • Jako bonus se muze ukladat do kazdyho radku i id usera, kterej ho vytvoril
    • Pokud tedy pri auditu chci videt historii zaznamu, tak staci vynechat WHERE na NULLovy plati_do.
    Cely je to IMHO naprosto super vymysleny, ale ma to jeden zasadni problem. Neumim to zautomatizovat na urovni databaze a na urovni kodu je to pruda ohlidat aby nikdo nikde nezapisoval primo. Chci aby se vyse popsany proces aplikoval kdyz zavolam normalni naivni DELETE nebo UPDATE a nevi jak na to. SELECT me netrapi, to si klidne pohlidam sam.

    Zkousel sem to resit triggerem, ale ten nemuze zapisovat do tabulky, ktery se sam tyka. To je problem. Reseni by samozrejme bylo ukladat historii do druhy tabulky a pri mazani tam zaznamy proste presouvat, ale to se mi vubec nelibi, nepripada mi to dost elegantni a delat to v zadnym pripade nebudu.

    Odpovědi

    14.1.2015 16:35 OldFrog {Ondra Nemecek} | skóre: 36 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: Audit trails nad jedinou MySQL tabulkou?
    Teď jsem to psal v sousedním vláknu: nepomohl by mariadb-audit-plugin Jako inspirace nebo i jako řešení... (ale nepoužívám to). Pokud není databází Mysql/Maria, tak hledat analogický nástroj. IMHO asi je nějaký důvod proč ten modul vznikl.
    -- OldFrog
    rADOn avatar 14.1.2015 17:59 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: Audit trails nad jedinou MySQL tabulkou?
    Logicky to zni ok. Prakticky… o jak velky tabuli je rec? Datum platnosti od-do je hezka vec pokud chces aby slo zadat ze zitra rano zacne platit jina hodnota, jinak je to kapku overkill pacz nafukujes tabuli mrtvymi daty. Na malych datech je to putna, nad vetsim datasetem casem dojdes do stavu ze nemuzes udelat alter bez dlouhyho vypadku a pak se to musi resit trochu slozitejc.

    Reseni by se mozna dalo zaridit triggerem coz by bylo bytelny ale docela vachrlaty (ve smyslu ze to nepujde snadno obejit ale muze to mit vedlejsi ucinky, zalezi co za db pouzivas). Asi nejprimocarejsi by bylo napsat si na to storku. Musel by sis pohlidat ze nikdo nebude primo updatovat/deletovat ale to se da, dulezity je ze nebudes muset vsude opisovat tu kopirovaci logiku. Na chytrejsi db by se to i nechalo vynutit pravama. Storka je lepsi nez trigger pacz tam muzes napsat slozitejsi logiku a je lip videt co to dela.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    14.1.2015 19:23 Kit | skóre: 45 | Brno
    Rozbalit Rozbalit vše Re: Audit trails nad jedinou MySQL tabulkou?
    Trigger s insertem do další tabulky. Obojí s právy jiného uživatele, aby se se záznamy nedalo manipulovat.
    Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.

    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.