Kod #1

Closed
opened 2020-12-06 17:14:03 +01:00 by s350714 · 0 comments
Owner

USE master
GO

IF DB_ID('BazaGierKomputerowych') IS NULL
CREATE DATABASE BazaGierKomputerowych
GO

USE BazaGierKomputerowych;

IF OBJECT_ID('Popularność', 'U') IS NOT NULL
DROP TABLE Popularność

IF OBJECT_ID('Dodatki', 'U') IS NOT NULL
DROP TABLE Dodatki

IF OBJECT_ID('Recenzje', 'U') IS NOT NULL
DROP TABLE Recenzje

IF OBJECT_ID('Użytkownik', 'U') IS NOT NULL
DROP TABLE Użytkownik

IF OBJECT_ID('GryKomputerowe', 'U') IS NOT NULL
DROP TABLE GryKomputerowe

IF OBJECT_ID('GryKomputerowe', 'U') IS NULL
CREATE TABLE GryKomputerowe (
id INT NOT NULL PRIMARY KEY,
nazwa VARCHAR(100)UNIQUE NOT NULL,
gatunek VARCHAR(20) NOT NULL CHECK (gatunek IN
( 'Battle-Royale', 'Sportowe', 'Strategiczne', 'Symulacje', 'Akcja', 'MMO', 'RPG', 'Survival', 'MOBA', 'FPS')),
data_wydania DATE NOT NULL,
producent VARCHAR(30) NOT NULL,
wydawca VARCHAR(30) NOT NULL,
cena MONEY NOT NULL,
ocena_gry TINYINT NOT NULL,
dodatki VARCHAR(3) NOT NULL CHECK (dodatki IN
('Tak', 'Nie')),
osiągnięcia VARCHAR(3)
)
GO

IF OBJECT_ID('Użytkownik', 'U') IS NULL
CREATE TABLE Użytkownik (
id INT NOT NULL PRIMARY KEY,
nazwa_użytkownika VARCHAR(20)UNIQUE NOT NULL,
e_mail VARCHAR(50)UNIQUE NOT NULL,
ilość_gier VARCHAR(10)
)
GO

IF OBJECT_ID('Recenzje', 'U') IS NULL
CREATE TABLE Recenzje (
id_recenzji INT NOT NULL IDENTITY PRIMARY KEY,
id_gry INT NOT NULL FOREIGN KEY REFERENCES GryKomputerowe(id),
id_użytkownika INT NOT NULL FOREIGN KEY REFERENCES Użytkownik(id),
ocena TINYINT NOT NULL,
recenzja VARCHAR(5000) NOT NULL,
data_recenzji DATETIME NOT NULL,
UNIQUE (id_recenzji, id_gry)
)
GO

IF OBJECT_ID('Dodatki', 'U') IS NULL
CREATE TABLE Dodatki (
id_dodatku INT NOT NULL IDENTITY PRIMARY KEY,
id_gry INT NOT NULL FOREIGN KEY REFERENCES GryKomputerowe(id),
nazwa_dodatku VARCHAR(100)UNIQUE NOT NULL,
data_wydania DATE NOT NULL,
cena_dodatku MONEY NOT NULL
)
GO

IF OBJECT_ID('Popularność', 'U') IS NULL
CREATE TABLE Popularność (
id_gry INT NOT NULL FOREIGN KEY REFERENCES GryKomputerowe(id),
średnia_graczy INT NOT NULL,
najwięcej_graczy INT NOT NULL
)
GO

USE master GO IF DB_ID('BazaGierKomputerowych') IS NULL CREATE DATABASE BazaGierKomputerowych GO USE BazaGierKomputerowych; IF OBJECT_ID('Popularność', 'U') IS NOT NULL DROP TABLE Popularność IF OBJECT_ID('Dodatki', 'U') IS NOT NULL DROP TABLE Dodatki IF OBJECT_ID('Recenzje', 'U') IS NOT NULL DROP TABLE Recenzje IF OBJECT_ID('Użytkownik', 'U') IS NOT NULL DROP TABLE Użytkownik IF OBJECT_ID('GryKomputerowe', 'U') IS NOT NULL DROP TABLE GryKomputerowe IF OBJECT_ID('GryKomputerowe', 'U') IS NULL CREATE TABLE GryKomputerowe ( id INT NOT NULL PRIMARY KEY, nazwa VARCHAR(100)UNIQUE NOT NULL, gatunek VARCHAR(20) NOT NULL CHECK (gatunek IN ( 'Battle-Royale', 'Sportowe', 'Strategiczne', 'Symulacje', 'Akcja', 'MMO', 'RPG', 'Survival', 'MOBA', 'FPS')), data_wydania DATE NOT NULL, producent VARCHAR(30) NOT NULL, wydawca VARCHAR(30) NOT NULL, cena MONEY NOT NULL, ocena_gry TINYINT NOT NULL, dodatki VARCHAR(3) NOT NULL CHECK (dodatki IN ('Tak', 'Nie')), osiągnięcia VARCHAR(3) ) GO IF OBJECT_ID('Użytkownik', 'U') IS NULL CREATE TABLE Użytkownik ( id INT NOT NULL PRIMARY KEY, nazwa_użytkownika VARCHAR(20)UNIQUE NOT NULL, e_mail VARCHAR(50)UNIQUE NOT NULL, ilość_gier VARCHAR(10) ) GO IF OBJECT_ID('Recenzje', 'U') IS NULL CREATE TABLE Recenzje ( id_recenzji INT NOT NULL IDENTITY PRIMARY KEY, id_gry INT NOT NULL FOREIGN KEY REFERENCES GryKomputerowe(id), id_użytkownika INT NOT NULL FOREIGN KEY REFERENCES Użytkownik(id), ocena TINYINT NOT NULL, recenzja VARCHAR(5000) NOT NULL, data_recenzji DATETIME NOT NULL, UNIQUE (id_recenzji, id_gry) ) GO IF OBJECT_ID('Dodatki', 'U') IS NULL CREATE TABLE Dodatki ( id_dodatku INT NOT NULL IDENTITY PRIMARY KEY, id_gry INT NOT NULL FOREIGN KEY REFERENCES GryKomputerowe(id), nazwa_dodatku VARCHAR(100)UNIQUE NOT NULL, data_wydania DATE NOT NULL, cena_dodatku MONEY NOT NULL ) GO IF OBJECT_ID('Popularność', 'U') IS NULL CREATE TABLE Popularność ( id_gry INT NOT NULL FOREIGN KEY REFERENCES GryKomputerowe(id), średnia_graczy INT NOT NULL, najwięcej_graczy INT NOT NULL ) GO
Sign in to join this conversation.
No Label
No Milestone
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: s350714/PracProg#1
No description provided.