Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры_БД.rtf
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
385.02 Кб
Скачать

5.Язык sql. Команды создания базы данных и таблиц

Создание БД

CREATE DATABASE MyDB

ON

(NAME=MyDBroot,

FILENAME=’c:\mydbroot.mdf’,

SIZE=8MB,

MAXSIZE=9MB,

FILEGROWTH=100KB),

(NAME=MyDBroot1,

FILENAME=’c:\mydbroot1.ndf’,

SIZE=100MB,

MAXSIZE=150MB,

FILEGROWTH=100KB),

LOG ON

(NAME=Logdata1,

FILENAME=’e:\logdata1.ldf’,

SIZE=100MB,

MAXSIZE=150MB,

FILEGROWTH=100MB)

Пример создания таблицы:

CREATE TABLE Stud

(Nzk N(6) NOT NULL PRIMARY KEY,

fio C(20) NOT NULL UNIQUE,

dr d,

kurs i CHECK (kurs>0 and kurs<6)

ERROR ‘Курс в интервле от 1 до 5’ DEFAULT 1,

stip N(6,2) NULL DEFAULT 0,

gr C(6) NOT NULL REFERENCES Gruppa TAG n_gr,

FOREIGN KEY gr TAG n_gr REFERENCES Gruppa

)

Заданные ограничения в команде CREATE TABLE

Исключение пустых значений NOT NULL

Ограничение уникальности UNIQUE

Ограничение на первичный ключ PRIMARY KEY

Проверка значения полей CHECK

Установка значений по умолчанию, когда вставляем пустую запись в таблицу хотя бы одно поля должно иметь значение по умолчанию DEFAULT

Поддержка ограничения на связь (внешних и родительских ключей). Когда все значения в поле одной таблицы представлены в поле другой таблицы говорят, что первое поле ссылается на второе. Например, номер группы в таблице «Студент» ссылается на поле номер группы в таблице «Группа». Первое поле называется внешним ключом, второе родительским т.о. каждое значение внешнего ключа должно ссылаться к одному и только одному значению родительского ключа. Если это условие выполняется, то говорят, что данные таблицы находятся в состоянии ссылочной целостности. Для указания внешних ключей используется ключевое поле FOREIGN KEY.

Язык SQL. Команда выборки данных SELECT

Команда позволяет:

  1. назначать поля, которые должны быть выбраны.

  2. выбрать все поля

  3. управлять вертикальными и горизонтальными порядком выбора полей

  4. формировать собственные заголовки полей в выбранных результирующих таблицах

  5. производить вычисления в списке выбираемых вычислений

  6. использовать текстовые константы в списке выбираемых вычислений

  7. ограничивать число возвращаемых строк

  8. формировать сложные условия поиска

  9. устранять одинаковые строки ив результате

Пример: Student (Nzk, fio, dr, stip)

● Получит все сведения обо всех студентах

select * from Student

● Использование вычисления и текстовых констант

select ‘студент’,fio, ’получает’, stip*1.8, ’руб’ from Student

● Уничтожение дублирования в выводимых строках. Получить список групп в которой учится хотя бы один студент

Select DISTINCT gr from Student

● Ограничение на количество выводимых строк (первых 50 студентов)

Select top 50 fio, gr from Student

● Предиката BETWEEN. Получить список студентов, чьи фамилии начинаются на Петров, а заканчиваются на Иванов.

select fio, stip from Student WHERE fio BETWEEN ‘ИВ’ AND ‘Пет’

● Предиката IN. Получить список студентов 1,3 и 5-го курсов

select fio, gr from Student WHERE kurs IN (1,3,5)

● Предиката LIKE. Получить список студентов, чьи фамилии заканчиваются на «со»

select fio, gr from Student WHERE fio LIKE ‘%co’

Команды модификации языка SQL (DELETE, INSERT, UPDATE)

INSERT – используется для добавления одной или нескольких записей в таблицу.

Формат команды:

INSERT INTO <имя таблицы> (<имя поля 1>< имя поля 2>…< имя поля n>)

VALUES(<значение 1>< значение 2>…< значение n>)

Пример добавления новой записи в таблицу Студент

INSERT INTO Student(Nzk, fio, gr)

Values (381515, ‘Петров’, ‘98ВП2’)

DELETE удаление строк из таблицы.

Формат команды:

DELETE FROM <имя таблицы> WHERE <условие>

Удаление всех студентов таблицы Студент

DELETE FROM Student

UPDATE – изменение значения поля (модификация таблицы)

Формат команды:

UPDATE <имя таблицы>

SET <имя поля>=<значение> [,<имя поля>=<значение>,..]

[WHERE <условие>]

Заменить курс студента на следующий

UPDATE Student

SET kurs=kurs + 1

WHERE kurs<5

108