-- Создайте таблицу Clients:
CREATE TABLE Clients(
ClientID int PRIMARY KEY IDENTITY(1,1) NOT NULL,
ClientName varchar (40) NOT NULL,
HeadFullName varchar (60) NULL,
Location int NULL,
-- создание ограничения по внешнему ключу
CONSTRAINT FK_Clients_Locations FOREIGN KEY (Location)
REFERENCES Locations(LocationID)
ON UPDATE CASCADE
)
GO
-- Создайте таблицу Currency:
CREATE TABLE Currency(
CurrencyID char(3) PRIMARY KEY NOT NULL,
CurrencyName varchar(30) NOT NULL,
Rate smallmoney NOT NULL CHECK (Rate>0)
)
-- Создайте таблицу Products:
CREATE TABLE Products(
ProductID int PRIMARY KEY NOT NULL,
ProductName varchar(50) NOT NULL,
Measure char(10) NULL,
Price money NULL CHECK (Price>=0),
Currency char(3) NULL,
CONSTRAINT FK_Products_Currency FOREIGN KEY(Currency)
REFERENCES dbo.Currency (CurrencyID)
)
GO
-- Создайте таблицу Orders:
CREATE TABLE Orders(
OrderID int IDENTITY(1,1) NOT NULL,
Client int NOT NULL,
Product int NOT NULL,
Quantity numeric(12,3) NULL,
OrderDate date NULL DEFAULT getdate(),
DeliveryDate date NULL DEFAULT getdate()+14,
PRIMARY KEY ( -- составной первичный ключ
OrderID ASC,
Client ASC,
Product ASC
),
CONSTRAINT FK_Orders_Clients FOREIGN KEY(Client)
REFERENCES dbo.Clients (ClientID)
ON UPDATE CASCADE,
CONSTRAINT FK_Orders_Products FOREIGN KEY(Product)
REFERENCES dbo.Products (ProductID)
ON UPDATE CASCADE
)
GO