
- •Московский Авиационный Институт
- •Оглавление
- •Теоритическая часть Основные термины, используемые в пособии
- •Многопользовательские базы данных
- •Модель данных
- •Избыточность в таблицах базах данных
- •Нормализация
- •Ограничения целостности
- •Индексы
- •История выпусков sql Server
- •Редакции sql Server 2008
- •Системные требования sql server 2008
- •Установка ms sql Server 2008
- •Программное обеспечение sql Server 2008
- •Базы данных
- •Создание новой бд
- •Удаление бд
- •Создание таблиц
- •Удаление таблиц
- •Работа с таблицами
- •Типы данных
- •Создание пользовательских типов данных
- •Создание ограничений
- •Создание диаграммы бд
- •Создание представлений
- •Создание триггеров
- •Индексы
- •Безопасность sql Server
- •Создание имя входа
- •Создание пользователя базы данных
- •Настройка удаленного доступа к бд в 326 аудитории
Удаление таблиц
Если таблица, которую вы создали, вам больше не нужна, вы можете удалить ее из БД. Для удаления выделите таблицу в БД в «Таблицы» в окне «Обозревателя объектов». Нажмите кнопку «Delete» или щелкните правой кнопкой мыши по таблице и выберите «удалить». SQL Server отобразит сообщение, запрашивающее у вас подтверждение удаления:
3. Нажмите ОК. SQL Server удалит таблицу из БД.
Работа с таблицами
Для изменения созданной таблицы в окне Обозревателя Объектов откройте в БД контейнер «Таблицы» и щелкните правой кнопкой мыши по таблице и выберите «Проект», откроется окно структуры таблицы, ничем не отличающееся от окна создания таблицы:
Для изменения содержимого таблицы в окне Обозревателя Объектов откройте в БД контейнер «Таблицы» и щелкните правой кнопкой мыши по таблице и выберите «Изменить первые 200 строк», откроется окно с содержимым таблицы:
Соответственно выбрав нужное поле, можно удалить, заменить значение поля или выбрав пустую строчку и введя значение, добавить строчку в таблицу. Если значение в поле отсутствует, то в поле отображается «NULL» («NULL» не равно 0, т.к. 0 – это значение).
Типы данных
Хотя типы данных обычно не рассматривают как ограничения, применение их в столбцах создает существенные ограничения. Выбирая тип данных, вы ограничиваете диапазон возможных значений столбца, а также задаете максимальное количество места, занимаемое данными. Решения о выборе типов данных оказывают огромное влияние на производительность базы данных. Типы данных надо выбирать так, чтобы они обеспечивали хранение нужных данных и при этом не занимали лишнего места на диске и главное, чтобы впустую не расходовался самый ценный ресурс – память сервера, поскольку все данные проходят через оперативную память.
Числовые типы данных
Тип данных |
Диапазон значений |
Занимаемое пространство |
tinyint |
от 0 до 255 |
1 байт |
smallint |
от –32 768 до 32 767 |
2 байта |
int |
от –2 147 483 648 до 2 147 483 647 |
4 байта |
bigint |
от –9 223 372 036 854 775 808 до 9 223 372 036 854 775 807 |
8 байт |
numeric (p, s) и decimal(p,s) |
Данные с фиксированной точностью и численным масштабом от –10^38+1 до 10^38–1. |
19 байт |
smallmoney |
От -214 748,3648 до 214 748,3647 |
4 байта |
money |
От -922 337 203 685 477,5808 до 922 337 203 685 477,5807 |
8 байт |
real |
От - 3,40E + 38 до -1,18E - 38, 0 и от 1,18E - 38 до 3,40E + 38 |
4 байта |
float |
От - 1,79E+308 до -2,23E-308, 0 и от 2,23E-308 до 1,79E+308 |
4 или 8 байт, если после запятой больше 24 цифр |
Типы numeric (p, s) и decimal (p, s) полностью одинаковы, созданы для совместимости со старыми версиями SQL Server. Переменная p указывает точность (сколько максимально цифр в числе) и может принимать значения от 1 до 38. Переменная s указывает масштаб (сколько цифр в числе после запятой), она может принимать значения от 0 до p.
Символьные типы данных
Тип данных |
Занимаемое пространство |
CHAR(n) |
До 8000 байт |
VARCHAR(n) |
До 8000 байт |
NCHAR(n) |
До 8000 байт |
NVARCHAR(n) |
До 8000 байт |
n – заданное максимольное количество символов. NCHAR(n) и NVARCHAR(n) содержат данные в кодировке Unicode (2 байта на символ), соответственно максимальная вместимость – 4000 символов. CHAR(n) и NCHAR(n) выделяют под каждую запись максимум пространства, т.е. записи 10 символов и 1000 символов будут одинаково занимать по 8000 байт каждая при максимальном n. VARCHAR(n) и NVARCHAR(n) же наоборот выделяют пространство под количество символов, т.е. при записи 10 символов в VARCHAR(n) будет выделено 10 байт.
Типы данных времени и даты
Тип данных |
Диапазон |
Точность |
Занимаемое пространство |
Smalldatetime |
01.01.1990-06.06.2079 |
1 минута |
4 байта |
Datetime |
01.01.1753-31.12.9999 |
0.00333 секунды |
8 байт |
Datetime2 |
01.01.0001-31.12.9999 |
100 наносекунд |
От 6 до 8 байт |
Datetimeoffset |
01.01.0001-31.12.9999 |
100 наносекунд |
От 8 до 10 байт |
Date |
01.01.0001-31.12.9999 |
1 день |
3 байта |
Time |
00:00:00.0000000 до 23:59:59.9999999 |
100 наносекунд |
От 3 до 5 байт |
Datetimeoffset позволяет хранить часовые пояса в приложениях, работающих с местными временами и датами.
Двоичные данные
Тип данных |
Диапазон |
Занимаемое пространство |
Bit |
NULL, 0 или 1 |
1 бит |
Binary |
Двоичные данные фиксированной длины |
До 8000 байт |
Varbinary |
Двоичные данные переменной длины |
До 8000 байт |
Прочие типы данных
Ntext - Данные Unicode переменной длины, максимальная длина 1073741823 символов.
Image - Двоичные данные переменной длины, максимальная длина 2147483647.
Cursor - Ссылка на курсор. Курсор представляет собой сущность, которая устанавливает ссылку на определенную строку в результирующем наборе.
Rowversion - Уникальный используемый для всей базы данных номер, который обновляется каждый раз при модификации строки.
Sql_variant - содержит строки различных типов данных. Например, столбец, определенный как sql_variant, может хранить значения int, binary и char.
hierarchyid - системный тип данных переменной длины. Используется для представления положения в иерархии. Приложение должно создать и назначить значения hierarchyid таким образом, чтобы они отражали требуемые связи между строками.
Table - особый тип данных, который можно использовать для хранения результирующего набора с целью последующей его обработки. Тип table применяется, главным образом, для временного хранения набора строк, возвращаемого в качестве результирующего набора возвращающей табличное значение функции.
uniqueidentifier - 16-байтовый идентификатор GUID, xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx, где каждый x представляет шестнадцатеричное число (0-9 или a-f).
XML - тип данных, в котором хранятся XML-данные. Можно хранить экземпляры xml в столбце либо в переменной типа xml.