Eric Migicovsky, zakladatel společnosti Pebble, v lednu oznámil, že má v plánu spustit výrobu nových hodinek Pebble s již open source PebbleOS. V březnu spustil předprodej hodinek Pebble Time 2 (tenkrát ještě pod názvem Core Time 2) za 225 dolarů s dodáním v prosinci. Včera představil jejich konečný vzhled (YouTube).
Byla oznámena nativní podpora protokolu ACME (Automated Certificate Management Environment) ve webovém serveru a reverzní proxy NGINX. Modul nginx-acme je zatím v preview verzi.
Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.
Společnost Perplexity AI působící v oblasti umělé inteligence (AI) podala nevyžádanou nabídku na převzetí webového prohlížeče Chrome internetové firmy Google za 34,5 miliardy dolarů (zhruba 723 miliard Kč). Informovala o tom včera agentura Reuters. Upozornila, že výše nabídky výrazně převyšuje hodnotu firmy Perplexity. Společnost Google se podle ní k nabídce zatím nevyjádřila.
Intel vydal 34 upozornění na bezpečnostní chyby ve svých produktech. Současně vydal verzi 20250812 mikrokódů pro své procesory řešící 6 bezpečnostních chyb.
Byla vydána nová verze 1.25 programovacího jazyka Go (Wikipedie). Přehled novinek v poznámkách k vydání.
Byla vydána beta verze Linux Mintu 22.2 s kódovým jménem Zara. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze novou XApp aplikaci Fingwit pro autentizaci pomocí otisků prstů nebo vlastní fork knihovny libAdwaita s názvem libAdapta podporující grafická témata. Linux Mint 22.2 bude podporován do roku 2029.
Provozovatel internetové encyklopedie Wikipedie prohrál v Británii soudní spor týkající se některých částí nového zákona o on-line bezpečnosti. Soud ale varoval britského regulátora Ofcom i odpovědné ministerstvo před zaváděním přílišných omezení. Legislativa zpřísňuje požadavky na on-line platformy, ale zároveň čelí kritice za možné omezování svobody slova. Společnost Wikimedia Foundation, která je zodpovědná za fungování
… více »Byla vydána verze 2.0.0 nástroje pro synchronizaci dat mezi vícero počítači bez centrálního serveru Syncthing (Wikipedie). Přehled novinek na GitHubu.
Americký prezident Donald Trump se v pondělí osobně setkal s generálním ředitelem firmy na výrobu čipů Intel Lip-Bu Tanem. Šéfa podniku označil za úspěšného, informují agentury. Ještě před týdnem ho přitom ostře kritizoval a požadoval jeho okamžitý odchod. Akcie Intelu v reakci na schůzku po oficiálním uzavření trhu zpevnily asi o tři procenta.
... 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: