Страна varchar(20) default 'Беларусь' NOT Null, 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Страна varchar(20) default 'Беларусь' NOT Null,



Область VARCHAR(20) NOT NULL,

Город VARCHAR(20) NOT NULL,

Адрес VARCHAR(50) NOT NULL,

Телефон CHAR(15) NULL,

Факс CHAR(15) NOT NULL CONSTRAINT CIX_Регион_1

UNIQUE ON Secondary,

CONSTRAINT CIX_Регион UNIQUE (Страна, Область, Город, Адрес)

ON Secondary
)

 

/* Поставщик */

CREATE TABLE Поставщик ( /* вторая команда пакета */

КодПоставщика INT PRIMARY KEY,

ИмяПоставщика VARCHAR(40) NOT NULL,

УсловияОплаты VARCHAR(30) DEFAULT 'Предоплата' NULL,

КодРегиона INT NULL,

Заметки VARCHAR(MAX) NULL,

CONSTRAINT FK_Поставщик_Регион FOREIGN KEY (КодРегиона)

REFERENCES Регион ON UPDATE CASCADE

)

 

/* Клиент */

CREATE TABLE Клиент ( /* третья команда пакета */

КодКлиента INT IDENTITY(1,1) PRIMARY KEY,

ИмяКлиента VARCHAR(40) NOT NULL,

ФИОРуководителя VARCHAR(60) NULL,

КодРегиона INT NULL,

CONSTRAINT FK_Клиент_Регион FOREIGN KEY (КодРегиона)

REFERENCES Регион ON UPDATE CASCADE

)

/* Валюта */

CREATE TABLE Валюта ( /* четвертая команда пакета */

КодВалюты CHAR(3) PRIMARY KEY,

ИмяВалюты VARCHAR(30) NOT NULL,

ШагОкругления NUMERIC(10, 4) DEFAULT 0.01 NULL

CHECK (ШагОкругления IN (10, 1, 0.01)),

КурсВалюты SMALLMONEY NOT NULL CHECK (КурсВалюты > 0)

)

/* Товар */

CREATE TABLE Товар ( /* пятая команда пакета */

КодТовара INT PRIMARY KEY,

Наименование VARCHAR(50) NOT NULL,

Единица_изм CHAR(10) DEFAULT 'штука' NULL,

Цена MONEY NULL CHECK (Цена > 0),

КодВалюты CHAR(3) DEFAULT 'BYR' NULL,

Расфасован LOGICAL NOT NULL,

CONSTRAINT FK_Товар_Валюта FOREIGN KEY (КодВалюты)

REFERENCES Валюта ON UPDATE CASCADE

)

 

/* Заказ */

CREATE TABLE Заказ ( /* шестая команда пакета */

КодЗаказа INT IDENTITY(1,1) NOT NULL,

КодКлиента INT NOT NULL,

КодТовара INT NOT NULL,

Количество NUMERIC(12, 3) NULL CHECK (Количество > 0),

ДатаЗаказа DATETIME DEFAULT getdate() NULL,

СрокПоставки DATETIME DEFAULT getdate() + 14 NULL,

КодПоставщика INT NULL,

PRIMARY KEY (КодЗаказа, КодКлиента, КодТовара),

CONSTRAINT FK_Заказ_Товар FOREIGN KEY (КодТовара)

REFERENCES Товар ON UPDATE CASCADE ON DELETE CASCADE,

CONSTRAINT FK_Заказ_Клиент FOREIGN KEY (КодКлиента)

REFERENCES Клиент ON UPDATE CASCADE ON DELETE CASCADE,

CONSTRAINT FK_Заказ_Поставщик FOREIGN KEY (КодПоставщика)

REFERENCES Поставщик

)

GO

Ç

10. Создание индекса таблицы. Синтаксис команды (см. [1], стр. 1030):

 

CREATE [ UNIQUE ] [ CLUSTERED | NONCLUSTERED ] INDEX index_name
ON { table | view } ( column [ ASC | DESC ] [,... n ] )
[ WITH < index_option > [,... n ] ]
[ ON filegroup ]

< index_option >:: =
{ PAD_INDEX |
FILLFACTOR = fillfactor |
IGNORE_DUP_KEY |
DROP_EXISTING |
STATISTICS_NORECOMPUTE |
SORT_IN_TEMPDB
}

 

É

CREATE UNIQUE INDEX UIX_Поставщик ON Поставщик (ИмяПоставщика)

ON Secondary

CREATE UNIQUE INDEX UIX_Клиент ON Клиент (ИмяКлиента)

ON Secondary

CREATE UNIQUE INDEX UIX_Валюта ON Валюта (ИмяВалюты)

ON Secondary

CREATE UNIQUE INDEX UIX_Товар ON Товар (Наименование)

ON Secondary

CREATE INDEX IX_Регион ON Регион (Страна, Город) ON Secondary

CREATE INDEX IX_Товар ON Товар (Единица_изм, Наименование)

ON Secondary

CREATE INDEX IX_Заказ ON Заказ (ДатаЗаказа) ON Secondary

GO

Ç

10. Сохраните текущий сценарий в файле D:\Work\X7230ХХХ\Script.sql с помощью команды меню File►Save as …

11. Обновите данные на панели Object Explorer. Для этого в ней нужно выделить папку Databases и в ее контекстном меню выбрать команду Refresh (или нажать соответствующую кнопку в верхней части этой панели). В результате база данных Склад_ХХХ станет видимой на панели Object Explorer.

12. Переключитесь на другую базу данных, например Master. Для этого нужно сделать активным окно Query и далее выбрать базу данных Master в выпадающем списке, расположенном на панели инструментов. Другой вариант – набрать в окне Query две команды (USE Master и GO), выделить их и выполнить.

13. Удалите созданную базу данных Склад_ХХХ, поскольку теперь мы ее всегда можем сгенерировать с помощью сценария Script.sql. Для этого на панели Object Explorer выберите базу данных Склад_ХХХ и в ее контекстном меню выполните команду Delete.

Примечание. Базу данных невозможно удалить, если предварительно не закрыть существующее соединение или не переключиться на другую базу данных, что и было сделано в предыдущем пункте. Можно, однако, обойтись без выполнения предыдущего пункта и сразу удалить активную базу данных Склад_ХХХ, но в этом случае после появления на экране окна Delete Object нужно в нижней его части установить флажок Close Existing Connections.

14. Закройте утилиту SQL Server Management Studio.

 



Поделиться:


Последнее изменение этой страницы: 2017-01-25; просмотров: 311; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.16.218.62 (0.039 с.)