DuckDuckGo AI Chat umožňuje "pokecat si" s GPT-3.5 Turbo od OpenAI nebo Claude 1.2 Instant od Anthropic. Bez vytváření účtu. Všechny chaty jsou soukromé. DuckDuckGo je neukládá ani nepoužívá k trénování modelů umělé inteligence.
VASA-1, výzkumný projekt Microsoftu. Na vstupu stačí jediná fotka a zvukový záznam. Na výstupu je dokonalá mluvící nebo zpívající hlava. Prý si technologii nechá jenom pro sebe. Žádné demo, API nebo placená služba. Zatím.
Nová čísla časopisů od nakladatelství Raspberry Pi: MagPi 140 (pdf) a HackSpace 77 (pdf).
ESPHome, tj. open source systém umožňující nastavovat zařízení s čipy ESP (i dalšími) pomocí konfiguračních souborů a připojit je do domácí automatizace, například do Home Assistantu, byl vydán ve verzi 2024.4.0.
LF AI & Data Foundation patřící pod Linux Foundation spustila Open Platform for Enterprise AI (OPEA).
Neziskové průmyslové konsorcium Khronos Group vydalo verzi 1.1 specifikace OpenXR (Wikipedie), tj. standardu specifikujícího přístup k platformám a zařízením pro XR, tj. platformám a zařízením pro AR (rozšířenou realitu) a VR (virtuální realitu). Do základu se z rozšíření dostalo XR_EXT_local_floor. Společnost Collabora implementuje novou verzi specifikace do platformy Monado, tj. open source implementace OpenXR.
Byla vydána nová verze 0.38.0 multimediálního přehrávače mpv (Wikipedie) vycházejícího z přehrávačů MPlayer a mplayer2. Přehled novinek, změn a oprav na GitHubu. Požadován je FFmpeg 4.4 nebo novější a také libplacebo 6.338.2 nebo novější.
ClamAV (Wikipedie), tj. multiplatformní antivirový engine s otevřeným zdrojovým kódem pro detekci trojských koní, virů, malwaru a dalších škodlivých hrozeb, byl vydán ve verzích 1.3.1, 1.2.3 a 1.0.6. Ve verzi 1.3.1 je mimo jiné řešena bezpečnostní chyba CVE-2024-20380.
Digitální a informační agentura (DIA) oznámila (PDF, X a Facebook), že mobilní aplikace Portál občana je ode dneška oficiálně venku.
#HACKUJBRNO 2024, byly zveřejněny výsledky a výstupy hackathonu města Brna nad otevřenými městskými daty, který se konal 13. a 14. dubna 2024.
... WHERE check = true ... ... WHERE check = false ...Ví někdo? Díky
Booleovské hodnoty v databázi považuji za chybu v návrhu.Dôvod?
Blbě se přemísťují (fyzicky mažou) číselníkové záznamy, je třeba komplexní update, který může být nežádoucí, takže se záznam jen oflaguje, bo to referenční integritu nerozbije…
Jestlu tomu budeme říkat mazání nebo třeba řízení accessibility je putna…
V takovém případě už nejde z logiky věci o smazání, ale o změnu stavu – ten člověk nezmizel, nepřestal existovat, DELETE (ani ten „logický“) nedává smysl – pouze se změnil stav (nějaký příznak) a ten člověk už u nás nepracuje. A třeba se zase jednou vrátí. Rozhodně bys tam neměl mít sloupec smazáno
, ale spíš zaměstnanec
(boolean) nebo datumukončenípracovního_poměru
(datum a čas) případně mít nějakou další tabulku, ve které budeš sledovat, v jakých obdobích u tebe pracoval. Případně se tohle dá řešit přes role – v tabulce uživatelů bude pořád, ale odebereš mu všechna práva/role (včetně „aktivní zaměstnanci“).
Co je s relacemi1? Nebo ty myslíš vazby 1:N, M:N?
Hodnoty cizích klíčů můžeš nastavit na NULL, nebo smazat i navázané záznamy, podle toho, co dává smysl.
[1] tabulkami
EXISTS
, ale možná ten údaj nechcete počítat pořád dokola, možná ho dokonce potřebujete použít v indexu, takže použijete počítaný sloupec. A v tom počítaném sloupci bude výsledek toho EXISTS.
WHERE
splněna nebo nesplněna), svědčí o tom, že v používaných modelech existují atributy, které mohou nabývat logických hodnot ano/ne.
Nebuď si tak jistý, to dogma nemusí být tak pevné, jak by se na první pohled zdálo
Dokonce si myslím, že právě při programování, je daleko častější a potřebná Three-valued logic. Tedy stavy true/false/unknow
(nebo true/false/not-true-and-not-false
) jsou daleko běžnější než jen prosté true/false
, a v SQL je to de-facto běžně používaný přístup maskující se pod NULL…
Ty jsi nikdy nepotřeboval uložit jeden bit informace? Vždycky jich bylo víc?
Velmi často se dá nahradit tím, že tam nějaká jiná informace je nebo není.
S tím souhlasím – např. tam může být čas, kdy něco přestalo platit nebo bylo dokončeno (třeba doručení objednávky, dokončení studia) nebo to jde převést na další tabulku (historie stavů). Ale je otázka, jestli tyhle dodatečné informace chceš sledovat – někdy je nepotřebuješ nebo je to dokonce nežádoucí (ohrožovalo soukromí nebo zabíralo zbytečné místo na disku), tak se boolean perfektně hodí. Rozhodně bych z toho nedělal nějaké dogma a neříkal, že boolean v DB je špatně.
CHAR(1) | BINARY(1) popřípadě ENUM, stejně dříve nepozději potřebuješ minimálně three-valued typ.
Často volím variantu BINARY(1), protože jsem líný…
BINARY(1)protože je to zkráceně
CHAR(1) CHARACTER SET binarytakže za boha nevím, kde by to mohlo dělat problém
if ($row['col']) { ... }
" zafunguje, jak je očekáváno. Viděl jsem ale používat i ENUM('Y', 'N'), kde pak obojí znamená true.
CREATE TABLE t ( id int not null primary key auto_increment, value boolean ); INSERT INTO t (value) VALUES (FALSE),(TRUE),(NULL); SELECT * FROM t WHERE value = TRUE;Ohledně debaty zda je vůbec vhodné používat boolean - to je přece třeba zvážit vždy podle situace. Je na místě upozornit, že použití např. enum nebo set místo booleanu může být flexibilnější, ale podrobnější rozbor by měl smysl jedině v případě, že bychom znali celé zadání tazatele.
"Booleovské hodnoty v databázi považuji za chybu v návrhu. Proto nejlépe žádný, tedy takový sloupec v databázi nemít."Tak tvrdíš, že citované pravidlo má generální platnost, nebo ne? Pokud ne a je to jen nějaké pravidlo, kterého se z nevímjakého důvodu držíš, proč ho sem píšeš? Z toho je vidět, že normální člověk pochopí, že tomu tvrzení generální platnost dáváš. Oak se ovšem nediv, že se Ti ostatní snaží (a imho úspěšně) to pravidlo vyvrátit. Protože se snaží tazateli poradit - pokud tedy dá tazateli někdo radu špatnou, tak se tu radu snaží korigovat. Akorát jsou slušní a místo aby rovnou napsali, že se mýlíš, tak nejdřív chtějí vědět důvody, proč to tvrdíš. Takže ano, mohli Tě ignorovat, ale tím by byl uveden tazatel v omyl. Proto bylo správné, když na Tebe reagovali. Pokud si furt připadáš "nevině", tak pokládal bys za chybu ostatních, kdyby na radu "jak nainstalovat mysql" někdo reagoval, že on to dělá příkazem "rm / -rf" a Ti ostatní na to reagovali, že nemá pravdu? Nebo by to byla chyba toho člověka, co by tam tu blbinu napsal, byť jen "jako svůj názor"?
ja v mssql pouzivam bit.
True/false ma vyznam aj v pripade, mam vo front-end formular s checkboxmi. ako ulozim informaciu o tom, co je zvolene, alebo nie? tu informaciu potrebujem uchovat, lebo ju vyuzivam v dalsich storkach. int mi pride plytvanie, char(1) tiez nie je vhodny...
pripadne dost vyuzivam na identifikaciu, ci je zvoleny zaznam aktivny, alebo nie Active 0/1 - napr. uzivatel.
MySQL CHAR(1)
nebo MySQL TINYINT
nebo v M$SQL
8× BIT
v jedné tabulce je putna, okupuje to stejný prostor.
Tiskni Sdílej: