Katsetasin seda koodi DB Fiddle keskkonnas.
CREATE TABLE Tellimuse_seisundi_liik (tellimuse_seisundi_liik_kood INTEGER NOT NULL,
nimetus TEXT NOT NULL,
CONSTRAINT pk_tellimuse_seisundi_liik PRIMARY KEY (tellimuse_seisundi_liik_kood),
CONSTRAINT ak_tellimuse_seisundi_liik UNIQUE (nimetus));
INSERT INTO Tellimuse_seisundi_liik (tellimuse_seisundi_liik_kood, nimetus)
VALUES (1, 'Esitatud'); --lisamine õnnestus
INSERT INTO Tellimuse_seisundi_liik (nimetus)
VALUES ('Kinnitatud'); --lisamine õnnestus, genereeriti kood 2
SELECT * FROM Tellimuse_seisundi_liik; --Tabelis kaks rida
INSERT INTO Tellimuse_seisundi_liik (tellimuse_seisundi_liik_kood, nimetus)
VALUES (3, 'Kinnitatud');
SELECT * FROM Tellimuse_seisundi_liik;
--INSERT lause tekitas vea, mistõttu päringut ka ei täidetud.
Selline automaatne väärtuse genereerimine INTEGER tüüpi primaarvõtme veergu on SQLite omapära. Andmebaasi kasutajatel tuleks võtta teadmiseks, et klassifikaatori tabelite korral peab kasutaja tabelisse ka koodi lisama.
Hinda postitust:
Keskmine hinne : Pole veel hinnanguid!