Kodulehed
[384] - Andmebaasid I (ITI0206) (kevad 2023)
Esiletöstetud Kiirvalik
Lisainfo Kõige olulisemate tegevuste kiirvalik. Failide saatmiseks valige Vastamine alt sobiv ülesanne.
Üldist
Materjalid
LisainfoMaterjalide kataloogid
Isiklik
Lisainfo Info ainult Sulle - teised kasutajad seda ei näe
Abi
Lisainfo Võimalus küsida õppejõult abi (nagu foorum, kus saab küsida küsimusi ja kommenteerida vastuseid)
Mitmesugust
Abi / Kasutajatugi / Vahendid - MS Access

Avalikud küsimused ja vastused:

Küsimuste teemade nimekiri

Anonüümne (16.02.2023 15:14):
Mille poolest erineb MS Accessi andmetüüp BIT (YESNO) SQL standardis ettenähtud andmetüübist BOOLEAN?
Vastus (16.02.2023 15:24): MS Accessis on BIT tüüp selline, mille korral tehakse teisendus NULL=>FALSE

CREATE TABLE Toode (toode_kood INTEGER,
on_aktiivne BIT DEFAULT TRUE,
CONSTRAINT pk_toode PRIMARY KEY (toode_kood));

INSERT INTO Toode (toode_kood, on_aktiivne)
VALUES (1, NULL);

SELECT Count(*) AS cnt
FROM Toode
WHERE on_aktiivne=FALSE;
--Tulemuses 1 rida

SELECT Count(*) AS cnt
FROM Toode
WHERE on_aktiivne IS NULL;
--Tulemuses 0 rida

Samas tõelise BOOLEAN tüübi korral seda ei tehta. Näide PostgreSQList.

CREATE TABLE Toode (toode_kood INTEGER,
on_aktiivne BOOLEAN DEFAULT TRUE,
CONSTRAINT pk_toode PRIMARY KEY (toode_kood));

INSERT INTO Toode (toode_kood, on_aktiivne)
VALUES (1, NULL);

SELECT Count(*) AS cnt
FROM Toode
WHERE on_aktiivne=FALSE;
--Tulemuses 0 rida

SELECT Count(*) AS cnt
FROM Toode
WHERE on_aktiivne IS NULL;
--Tulemuses 1 rida

NULL tähistab antud juhul tõeväärtust UNKNOWN. Seega registreerisin väite, et pole teada, kas toode 1 on aktiivne või mitte. Vältimaks kolmevalentse loogika kasutamist, mille korral väite kontrolli tulemus võib olla TRUE/FALSE/UNKNOWN, tuleks veerule on_aktiivne deklareerida NOT NULL kitsendus.

Hinda vastust:

Keskmine hinne : Pole veel hinnanguid!