Вы находитесь на странице: 1из 3

equipment rucksack

PK equipmentID PK rucksackID
PF toolBoxID PF iceboxID
PF libaryID PF fridgeID
type PF cabinetID
itemName PF basketID
toolLevel PF libaryID
itemCount type
bagLv itemName
itemCount
bagLv

--DDL--

CREATE TABLE equipment(

type VARCHAR(10) NOT NULL,

itemName VARCHAR(50) NOT NULL CHECK(Type = 'tool' OR Type = 'seed'),

toolLevel INT CHECK(Type = 'tool' AND ToolLevel >= 0 AND ToolLevel <= 5),

itemCount INT NOT NULL CHECK(ItemCount >= 0 AND ItemCount <= 99) DEFAULT 0,

bagLv INT NOT NULL DEFAULT 0,

equipmentID VARCHAR(10) NOT NULL PRIMARY KEY,

toolBoxID VARCHAR(10) NOT NULL,

libaryID VARCHAR(10) NOT NULL,


FOREIGN KEY(toolBoxID) REFERENCES toolBox(toolBoxID),

FOREIGN KEY(libaryID) REFERENCES libary(libaryID)

);

CREATE TABLE rucksack(

type VARCHAR(10) NOT NULL,

itemName VARCHAR(50) NOT NULL CHECK(Type = 'food' OR Type = 'resources' OR Type = 'medicine'),

itemCount INT NOT NULL CHECK(ItemCount = 0 OR ItemCount = 1) DEFAULT 0,

bagLv INT NOT NULL DEFAULT 0,

rucksackID VARCHAR(10) NOT NULL PRIMARY KEY,

iceBoxID VARCHAR(10) NOT NULL,

fridgeID VARCHAR(10) NOT NULL,

cabinetID VARCHAR(10) NOT NULL,

basketID VARCHAR(10) NOT NULL,

libaryID VARCHAR(10) NOT NULL,

FOREIGN KEY(iceBoxID) REFERENCES iceBox(iceBoxID),

FOREIGN KEY(fridgeID) REFERENCES fridge(fridgeID),

FOREIGN KEY(cabinetID) REFERENCES cabinet(cabinetID),

FOREIGN KEY(basketID) REFERENCES basket(basketID),

FOREIGN KEY(libaryID) REFERENCES libary(libaryID)

);

--DML--

--display item equipment--

SELECT itemName, itemCount

FROM equipment

WHERE itemCount > 0;


--display item rucksack--

SELECT itemName

FROM rucksack

WHERE itemCount = 1;

--delete empty item on equipment--

DELETE FROM equipment

WHERE itemCount = 0 AND type = 'seed';

--delete empty item on rucksack--

DELETE FROM rucksack

WHERE itemCount = 0;

Вам также может понравиться