abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:22 | Upozornění Ladislav Hagara | Komentářů: 3
    včera 17:44 | Nová verze

    Firma Murena představila /e/OS verze 2.0. Jde o  alternativní sestavení Androidu bez aplikací Google. Mezi novinkami je podrobnější nastavení ochrany soukromí před sledováním aplikacemi. Murena prodává několik smartphonů s předinstalovaným /e/OS (Fairphone, repasovaný Google Pixel 5).

    Fluttershy, yay! | Komentářů: 0
    včera 14:33 | Zajímavý software

    Do 30. května lze v rámci akce Warhammer Skulls 2024 získat na Steamu zdarma hru Warhammer 40,000: Gladius - Relics of War.

    Ladislav Hagara | Komentářů: 0
    včera 13:33 | Nová verze

    HelenOS (Wikipedie), tj. svobodný operační systém českého původu založený na architektuře mikrojádra, byl vydán ve verzi 0.14.1. Přehled novinek v poznámkách k vydání. Vypíchnou lze nabídku Start. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 2
    23.5. 23:22 | Zajímavý software

    BreadboardOS je firmware pro Raspberry Pi Pico (RP2040) umožňující s tímto MCU komunikovat pomocí řádkového rozhraní (CLI). Využívá FreeRTOS a Microshell.

    Ladislav Hagara | Komentářů: 0
    23.5. 16:55 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 24.05. Přehled novinek i s náhledy a videi v oficiálním oznámení. Do balíku se dostalo 5 nových aplikací: Audex, Accessibility Inspector, Francis, Kalm a Skladnik.

    Ladislav Hagara | Komentářů: 9
    23.5. 12:55 | Nová verze

    Byla vydána (𝕏) nová verze 18.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    22.5. 23:44 | Pozvánky

    V neděli 26. května lze navštívit Maker Faire Rychnov nad Kněžnou, festival plný workshopů, interaktivních činností a především nadšených a zvídavých lidí.

    Ladislav Hagara | Komentářů: 0
    22.5. 16:33 | Nová verze

    Byla vydána nová stabilní verze 3.20.0, tj. první z nové řady 3.20, minimalistické linuxové distribuce zaměřené na bezpečnost Alpine Linux (Wikipedie) postavené na standardní knihovně jazyka C musl libc a BusyBoxu. Z novinek lze vypíchnou počáteční podporu 64bitové architektury RISC-V.

    Ladislav Hagara | Komentářů: 0
    22.5. 14:11 | IT novinky

    Společnost Jolla na akci s názvem Jolla Love Day 2 - The Jolla comeback představila telefon se Sailfish OS 5.0 Jolla Community Phone (ve spolupráci se společností Reeder) a počítač Jolla Mind2 Community Edition AI Computer.

    Ladislav Hagara | Komentářů: 19
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (82%)
     (4%)
     (7%)
     (7%)
    Celkem 524 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    Administrace komentářů

    Jste na stránce určené pro řešení chyb a problémů týkajících se diskusí a komentářů. Můžete zde našim administrátorům reportovat špatně zařazenou či duplicitní diskusi, vulgární či osočující příspěvek a podobně. Děkujeme vám za vaši pomoc, více očí více vidí, společně můžeme udržet vysokou kvalitu AbcLinuxu.cz.

    Příspěvek
    25.5.2012 17:46 l0gik | skóre: 22
    Rozbalit Rozbalit vše Re: MYSQL zmazanie velkeho mnozstva zaznamov pre usera a zaroven ich vlozenie
    Hromadný/dávkový způsob je, že napíšu jeden příkaz a ono to něco udělá s hromadou záznamů. Přečti si na wiki definici dávkového zpracování: "všechna data jsou připravena předem a pak se vykoná program". Nikde není napsáno, že to znamená, že se se všemi záznamy provádí stejná operace, nebo jak jsou záznamy, nad kterými je provedena dávka identifikované. Pro debatu o odborné problematice to chce znát terminologii.
    Když to uděláte podle primárních klíčů, je to přesně to rozepsání každého UPDATU na dvojici DELETE+INSERT
    Není, protože relační databáze jsou dělané na hromadné změny dat. Zapsáním do jednoho dotazu se ušetří spousta času, protože velká část činností se bude muset dělat jen jednou (parsování dotazu, optimalizace, zamykání datových struktur etc...) a navíc bude moci databáze zvolit optimální plán na získání těch záznamů, než když se to dělá po jednom, čímž se dostáváme k další věci, ve které nemáš pravdu.

    Pokud mám delete where id IN (...) a pak delete where id in () and něco between něco and něco, tak je druhý dotaz může být (dle rozložení dat a statistik) rychlejší, protože je intervalový. Tzn. v prvním dotazu databáze neví, které jsou a pro každý udělá extra lookup do indexu. Pokud bude těch idček hodně, tak dokonce zvolí sekvenční přístup nebo nějaký hash-join. Pokud tam ovšem bude druhá intervalová podmínka tak si místo toho databáze může jedním dotazem do indexu zjistit patřičné bloky a v nich pak už jen sekvenčně zkontrolovat idčka. Pokud nevěříš, tak si to zkus na nějakejch rozumnejch datech udělat explain plánů, že jsou opravdu jiné, což ukazuje na to, že pro databázi je výhodnější to hledat dle té intervalové podmínky. Samozřejmě závisí na tom, jak velkou část z toho intervalu chci: ale to je přesně to "nech to na db".

    --

    Proč má záznam v databázi unikátní ID? Třeba proto, aby byl jednoduchý primární klíč. A ze spousty jiných důvodů (např. standardní zpracování ORM nástroji či nástroji na generování dotazů atd. atd.). Navíc: já jsem někde psal, že tam musím mít idčka? To, že tam musím mít idčka je opět vaše projekce. Zas polemizujete sám se sebou.
    Takže pokud uživatel upraví 100 záznamů a v 1 bude konflikt, hodíte mu zpátky na hlavu 100 záznamů, ať si ten konflikt najde ručně? To budete dostávat tisíce děkovných dopisů…
    Ano, hodím. Napíšu mu: v databázi se stala oproti editaci taková a taková změna (to vyslektím opět jedním dotazem), tyto dni zmizely, tyto se objevili. Opravdu chcete vložit těchto sto záznamů a ostatní smazat? Když uživatel pracuje s množinou záznamů, tak je neslušné ho nechat půlku množiny uložit a půlku ne. Je na něm, jestli bude řešit jen ten konflikt, nebo na ten konflikt zareaguje úpravou celé množiny, proč mám být chytřejší než on.
    Co je id_verze?
    To už jsem psal? To musím každou věc napsat desetkrát? Id verze je id verze, tzn. číslo, které se po každé změně mění a je unikátní v db. Tedy např. je na tabulce before insert or update trigger NEW.id_verze = nextval('table_verze_seq')
    Ale hlavně, uživatel nebude mít žádnou možnost upravovat, jenom přidávat a mazat
    Takže jen kvůli tomu, abych dostál svému programovacímu purismu, že něco je set, tak místo toho, aby když se člověk při zadávání splete, tak danou položku přepsal, tak ji musí smazat a nahrát jinou. Ještě že nevyvíjíš aplikace pro mě.
    /příklad/
    Tak zaprvé jsem psal, že budu mít id verze sdílené, takže ten příklad nevyhovuje. Ale to je detail, protože
    Neupravené záznamy ani uživatel nikam neodesílá, bylo by to jen plýtvání.
    ...jste totálně překroutil zadání. Vždyť tazatel přímo píše: "ale bolo by to podla mna narocnejsie kazdy jeden zaznam skontrolovat a nasledne updatovat alebo neupdatovat.". Takže dle zadání NEVÍTE, co bylo nebo nebylo upraveno, smazáno atd uživatel odesílá celou množinu a pokud to chcete vědět, musel byste to u každého záznamu zjistit (= skontrolovat, neumíte-li slovensky). Holt když celá vaše kritika vyplývá z toho, že si ani neumíte pořádně přečíst zadání....

    V tomto formuláři můžete formulovat svou stížnost ohledně příspěvku. Nejprve vyberte typ akce, kterou navrhujete provést s diskusí či příspěvkem. Potom do textového pole napište důvody, proč by měli admini provést vaši žádost, problém nemusí být patrný na první pohled. Odkaz na příspěvek bude přidán automaticky.

    Vaše jméno
    Váš email
    Typ požadavku
    Slovní popis
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.