- •Классификация субд по типу модели данных:
- •Реляционная модель данных
- •Проектирование реляционных баз данных
- •Семантическое моделирование данных
- •Язык реляционных баз данных sql
- •Insert добавляет новые данные
- •If db_id (n'Поставщики и детали') is not null
- •Into создает новую таблицу и вставляет в нее строки результата выполнения запроса.
If db_id (n'Поставщики и детали') is not null
DROP DATABASE [Поставщики и детали]
GO
CREATE DATABASE [Поставщики и детали]
GO
USE [Поставщики и детали]
CREATE TABLE S
(
Sno INT IDENTITY(1,1) NOT NULL,
Sname VARCHAR(20) NOT NULL,
Status INT,
City VARCHAR(15)
)
CREATE TABLE P
(
Pno INT IDENTITY(1,1) NOT NULL,
Pname VARCHAR(20) NOT NULL,
Color CHAR(10),
Weight REAL,
City VARCHAR(15)
)
CREATE TABLE SP
(
Sno INT NOT NULL,
Pno INT NOT NULL,
Qty INT
)
ALTER TABLE S
ADD
CONSTRAINT PK_S PRIMARY KEY (Sno),
CONSTRAINT UK_S UNIQUE (Sname)
ALTER TABLE P
ADD
CONSTRAINT PK_P PRIMARY KEY (Pno)
ALTER TABLE SP
ADD
CONSTRAINT PK_SP PRIMARY KEY (Sno, Pno),
CONSTRAINT FK_SP_S FOREIGN KEY (Sno) REFERENCES S (Sno),
CONSTRAINT FK_SP_P FOREIGN KEY (Pno) REFERENCES P (Pno)
К приведенному сценарию можно дать следующие комментарии.
-
Сценарий написан на диалекте SQL компании Microsoft (для Microsoft SQL Server), известном под названием Transact-SQL (T-SQL).
-
Сценарии состоит из трех пакетов. Конец пакета отмечается командой GO.
-
Специальная команда USE меняет контекст на указанную базу данных.
-
Если идентификационный номер базы данных «Поставщики и детали» не NULL, то такая база данных уже существует и ее надо предварительно уничтожить. Для этой цели в начале сценария используется оператор IF.
-
Свойство IDENTITY используется для получения автоматически увеличивающегося идентификационного номера поставщика и детали.
-
Операторы CREATE TABLE и ALTER TABLE, включат в себя такие ограничения целостности, как ограничение целостности NULL, ограничение первичного ключа (PRIMARY КЕУ), ограничение уникальности (UNIQUE), ограничение внешнего ключа (FOREIGN КЕУ).
-
Сценарий можно расширить, добавив значения по умолчанию (DEFUULT), ограничения общего вида (CHECK) и команды импорта файла данных в таблицы базы данных (BULK INSERT).
Среди других перечисленных операторов наибольшее значение для конечного пользователя имеет оператор SELECT, который извлекает строки из базы данных и позволяет делать выборку одной или нескольких строк или столбцов из одной или нескольких таблиц. Полный синтаксис инструкции SELECT сложен, однако основные предложения можно вкратце описать следующим образом:
[ WITH общее_табличное_выражение]
SELECT [ DISTINCT | ALL ] [ TOP выражение [ PERCENT ] ] { * | список_выбора } [ INTO новая_таблица ]
[ FROM список_табличных_источников ]
[ WHERE условие_поиска ]
[ GROUP BY group_by_выражение ]
[ HAVING условие_поиска ]
[ ORDER BY order_by_выражение [ ASC | DESC ] ]
Предложения, составляющие оператор SELECT, имеют следующий смысл: