Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Базы данных создание баз данных в среде SQL Server. Лабораторный практикум
.pdf
Вокне«NewDatabase»отображаютсяпутихраненияфайловбазы
данных. Если они должны отличаться от путей по умолчанию, их
можноизменитьизадатьименафайлов(поумолчаниюонибудуттакимиже,какисоответствующиелогическиеимена).
Изучивобщиенастройкибазыданных(General)диалоговогоокна
Properties,перейдитенастраницу«Параметры»(Options)(рис.3.2).
Рис.3.2.Диалоговоеокно«Параметрыбазыданных»
Рассмотримнекоторыеизпараметровстраницы«Параметры».
Collation (сопоставление)определяет ряд правил,согласнокоторым сортируются и сравниваются данные. Символьные данные сортируются,используяправила, которыеопределяютправильнуюпоследовательностьсимволов,взависимостиотрегистра,надстрочных
знаков,символьныхтиповkanaиширинысимволов.
Чувствительность к регистру
ЕслисимволыAиa, B иbит.д.считаютсяодинаковыми,этоназывается независимостью (нечувствительностью) от регистра. Компьютер считает A и a различными символами, поскольку им соответствуют различные коды ASCII, позволяющие различать ввод.
ASCII-значениебуквыAесть65,втовремякакa–97.ASCII-значение
B–66,аb–98.
21

Чувствительность к акценту (диакритическим знакам)
Если«a»и«á»,«o»и«ó»трактуютсяодинаковыми,этоназываетсянечувствительностьюкакценту.Компьютерсчитает«a»и«á»разными,посколькудлянихиспользуютсяразличныекодыASCII.ASCII
значениемсимвола«a»является97,втовремякакдля«á»используется225.КодыASCIIдля«o»–111,а«ó»–243.
SQLServer2014разрешаетпользователямсоздаватьбазыданных,
таблицыистолбцысразличнойколлацией.
Recovery model (Модели восстановления баз данных)
Модель восстановления — это свойство базы данных, которое
управляетпроцессомрегистрациитранзакций,определяет,требуется
лидля журналатранзакций резервное копирование,а такжеопределяет,какиетипыоперацийвосстановлениядоступны.MSSQLServer
поддерживаеттримоделивосстановления:
FULL (Полная модель восстановления). При использовании
этоймоделивыполняетсяполноепротоколированиевсехтранзакций
исохраняютсязаписижурналатранзакцийдомоментаихрезервного
копирования. Модель полного восстановления позволяет восстановитьбазуданныхдоточкисбояприусловии,чтопослесбоявозможносозданиерезервнойкопиизаключительногофрагментажурнала.
Bulk Logged (Модель восстановления с неполным протоколированием). Эта модель восстановления обеспечивает неполное про-
токолирование большинства массовых операций. Она предназначена
для работы только в качестве дополнения к полной модели полного
восстановления.Дляряда масштабныхмассовыхопераций(массовый
импорт, создание индекса и т.п.) временное переключение на модель
восстановления с неполным протоколированием повышает производительность и уменьшает место, необходимое для журналов. Тем не
менеедляработы этой моделитребуютсярезервныекопиижурналов.
Какивмоделиполноговосстановления,вмоделивосстановленияснеполным протоколированиемсохраняютсязаписи журнала транзакций
после егорезервногокопирования.Этоувеличиваетобъем резервных
копийжурналовиповышаетрискпотерирезультатовработы,посколькумодельвосстановленияснеполнымпротоколированиемне поддерживаетвосстановлениедозаданногомоментавремени.
Simple (Простая модель восстановления). В простой модели восстановления протоколтранзакций усекается, если появляется
22

точкавосстановления.Ноэтонеозначает,чтовообщенесуществует
протоколирования,содержимоепротоколаиспользуетсявовремясозданияконтрольнойточки,гдевсетранзакциипротоколаподтвержденыилидлянихвыполненоткат.
При использовании простой моделивосстановления данные возможно восстановить только на момент последнего резервного копирования, а значит, недопустимы восстановления на конкретный
моментвремениилинаотметкувпротоколе.Всеизмененияспоследнегорезервногокопированиядолжныбытьвосстановленывручную.
Рекомендуетсяиспользоватьпростую модель восстановления для
производственныхбаз,тольковтехслучаях,когдасервербазданных
необладаетдостаточнымобъемомпамятииликогдааппаратнаячасть
серверабазданныхнижерекомендуемой.
Compatibility Level (Уровень совместимости). Этотпараметрзадает для базы данных поведение, обеспечивающеесовместимость с
указаннойболеераннейверсиейMicrosoftSQLServer.
Контрольные вопросы
1. К каким типам относятся группы файлов, образующих базу
данных?
2. Чтопредставляетсобойинфологическаямодельбазыданных?
3. КакиесистемныефайлыимееткаждаябазаданныхSQLServer
ичтоонисодержат?
4. Какиепараметры необходимозадать при добавлении файла в
базуданных?
5. В чем заключается стратегия пропорционального заполнения
файлов?
6. КакиенастройкирегулируетфункцияCollation?
7. Чтотакоемодельвосстановления?
23

Лабораторная работа 4
СОЗДАНИЕ БАЗЫ ДАННЫХ
С ИСПОЛЬЗОВАНИЕМ ЯЗЫКА TRANSACT-SQL
Цельработы: научитьсясоздаватьбазуданных сиспользованием
языкаTransact-SQL.
Длясозданиябазыданныхвыполнитеследующиедействия:
1. Установите соединение с компонентом Database Engine, если
ононеустановлено.
2. Настандартнойпанеливыберитепункт«NewQuery»(«Создать
запрос»).
3. Скопируйте следующий пример в окно запроса и нажмите
кнопку«Выполнить».
USE master ;
GO
CREATE DATABASE Sales
ON
( NAME = Sales_dat,
FILENAME = ‘C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\
MSSQL\DATA\saledat.mdf’,
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = Sales_log,
FILENAME = ‘C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\
MSSQL\DATA\salelog.ldf’,
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB )
COLLATE Cyrillic_General_CI_AS;
GO
В этом примере создается база данных Sales. Ключевое слово
PRIMARYнеиспользовано,поэтомупервый файл(Sales_dat)становится первичным файлом. Поскольку в параметре SIZE для файла
Sales_datне заданы суффиксыMBи KB,используетсязначениеMB
ипространствовыделяется в мегабайтах.МестодляфайлаSales_log
выделено в мегабайтах, потому что суффиксMB явно указан в параметре SIZE. Значения FILENAME Вы можете при необходимости
24

указатьсвои.ТакжепринеобходимостиВыможетеуказатьназвания
файлов,отличныеотsaledat.mdfиsalelog.ldf.
Еслине указыватьпараметры послеключевогословаON,то созданнаябазаданныхбудетиметьпараметры,установленныепоумолчаниюдлясерверабазыданных.
Сдополнительнымипараметрамибазыданных,атакжесдругими
примерамисозданиябазданныхсипользованиемязыкаTransact-SQL
Вы можете ознакомиться по ссылке https://msdn.microsoft.com/ru-ru/
library/ms176061(v=sql.120).aspx
Создание таблиц базы данных
ВSQLServerукаждогостолбца,локальнойпеременной,выраженияипараметраестьопределенныйтипданных.Типданных–атрибут,определяющий,какогородаданные могут хранитьсяв объекте:
целые числа, символы, данные денежного типа, метки времени и
даты,двоичныестрокиитакдалее.
Типы данных
ТипыданныхвSQLServerобъединенывследующиекатегории:
Таблица 4.1
Типы данных
Точныечисла СимвольныестрокивЮникоде
Приблизительныечисла Двоичныеданные
Датаивремя Прочиетипыданных
Символьныестроки Символы
Точные числа
Таблица 4.2
Точные числа
Тип данных Диапазон Объем памяти
bigint
int
smallint
tinyint
money
smallmoney
от-2^63(-9223372036854775808)
до2^63-1(9223372036854775807)
от–2^31(–2147483648)до2^31-1(2147483647) 4байта
от-2^15(-32768)до2^15-1(32767) 2байта
от0до255 1байт
От-922337203685477,5808до922337203685
477,5807
От-214748,3648до214748,3647 4байта
8байт
8байт
25

decimal и numeric
decimal[(p[, s])]иnumeric[(p[, s])]
Числасфиксированнойточностьюимасштабом.Прииспользованиимаксимальнойточностичисла могут приниматьзначенияв диапазоне от -10^38+1 до 10^38-1. Синонимами по стандарту ISO для
decimal являются dec и dec(p, s); numeric функционально эквивалентноdecimal;p–точность,s –масштаб.
Максимальноеколичестводесятичныхразрядовчисла (как слева,
так и справаот десятичной запятой),которыебудутхраниться. Точностьдолжнабытьзначениемвдиапазонеот1домаксимум38.Точностьпоумолчаниюсоставляет18.
Максимальное количество хранимых десятичных разрядов числа
справаот десятичной запятой. Эточисло отнимается отp дляопределения максимальногоколичества цифр слева от десятичной запятой.Максимальноеколичестводесятичныхразрядовчисласправаот
десятичной запятой.Масштаб можетприниматьзначениеот 0до p.
Масштабможетбытьуказантолькосовместносточностью.Поумолчаниюмасштабпринимаетзначение0;поэтому0<=s<=p.Максимальныйразмерхранилищазависитотточности.
Таблица 4.3
Зависимость размера хранилища от точности
Точность Объем памяти
1–9 5
10–19 9
20–28 13
29–38 17
bit–целочисленныйтипданных,которыйможетприниматьзначе-
ния1,0илиNULL.
Компонент SQL Server Database Engine оптимизирует хранение
столбцов типа bit. Если в таблице имеется 8 или меньше столбцов
типаbit, они хранятсякак 1байт.Если имеетсяот9 до16 столбцов
типаbit,онихранятсякак2байта,ит.д.СтроковыезначенияTRUEи
FALSEможнопреобразоватьвзначениятипаbit:TRUEпреобразуетсяв1,аFALSE–в0.Припреобразованиивбитовыйтип(bit)любое
ненулевоезначениеприравниваетсяк1.
Приблизительные числа (числа с плавающей точкой)
oat [ (n) ]
Здесьn– это количествобитов,используемыхдля хранениямантиссы числа в формате oat при экспоненциальном представлении.
26

Определяетточностьданныхиразмердля хранения. Значениепараметраnдолжнолежатьвпределахот1до53.Значениемпоумолчаниюдляпараметраnявляется53.
Таблица 4.4
Параметр n
Значение n Точность Объем памяти
1-24
25-53
Сравнение типов oat и real
Тип данных Диапазон Объем памяти
oat
real
-1,79E+308–-2,23E-308,0и2,23E-308–
1,79E+308
-3,40E+38–-1,18E-38,0и1,18E-38–
3,40E+38
7знаков 4байта
15знаков 8байт
Таблица 4.5
Зависитотзначенияn
4байта
Дата и время
ТипыданныхдатыивремениTransact-SQLперечисленывследую-
щейтаблице.
Таблица 4.6
Типы данных даты и времени Transact-SQL
Определяе-
мая пользо-
вателем точ-
ность в долях
секунды
Смеще-
ние ча-
сового
пояса
Тип
данных
time
Date
smalldatetime
datetime
Format Диапазон
чч:мм:сс
[.ннннннн]
ГГГГ-ММ-ДДОт0001-01-
ГГГГ-ММДДчч:мм:сс
ГГГГ-ММДДчч:мм:сс
[.ннн]
От00:00:00.
0000000до
23:59:59.
9999999
01до999912-31
От
01.01.1900
до
06.06.2079
От
01.01.1753
до
31.12.9999
Точ-
ность
100нс От3до5 Да Нет
1день 3 Нет Нет
1мин 4 Нет Нет
0,00333с8 Нет Нет
Объем
памяти
(в бай-
тах)
27

Окончание табл. 4.6
Определяе-
мая пользо-
вателем точ-
ность в долях
секунды
Да Да
Смеще-
ние ча-
сового
пояса
Тип
данных
datetime2
datetimeoffset
Format Диапазон
ГГГГММ-ДД
чч:мм:сс[.
ннннннн]
ГГГГММ-ДД
чч:мм:сс[.
ннннннн]
[+|-]чч:мм
От0001-010100:00:00.
0000000до
9999-12-31
23:59:59.
9999999
От0001-010100:00:00.
0000000до
9999-12-31
23:59:59.
9999999
(времяв
формате
UTC)
Точ-
ность
100нс От6до8 Да Нет
100
наносе-
кунд
Объем
памяти
(в бай-
тах)
От8до
10
Символьные строки
Char [ ( n ) ]
СтроковыеданныефиксированнойдлиныневЮникоде.Аргумент
n определяет длину строки и должен иметь значение от 1 до 8000.
Размерприхранениисоставляетnбайт.СинонимомпостандартуISO
длятипаcharявляетсяcharacter.
varchar [ ( n | max ) ]
Строковыеданныепеременной длиныневЮникоде.Аргументn
определяетдлинустрокиидолжениметьзначениеот1до8000.Значение max указывает, что максимальный размер при хранении составляет2^31-1байт(2ГБ).Размерхранения—этофактическаядлина введенных данных плюс 2байта. Синонимами по стандартуISO
длятипаvarcharявляютсятипыcharvaryingилиcharactervarying.
Еслизначениеnпри определенииданныхили в инструкцииобъявленияпеременнойнеуказано,тодлинапоумолчаниюравна1.
Объектам,использующимтипcharилиvarchar,назначаютсяпараметрысортировкипоумолчаниюбазы данных, еслитольконезадан
специальный режим при помощи предложения COLLATE. Параметрысортировкиконтролируюткодовуюстраницу,используемуюдля
хранениясимвольныхданных.
28

nchar [ ( n ) ]
Строковые данные постоянной длины в Юникоде. Параметр n
определяетдлинустрокиидолжениметьзначениеот1до4000.Размер при хранении составляет удвоенное значение n в байтах. Если
кодовая страница параметров сортировки использует двухбайтовые
символы, размер хранения остается равным n байт. В зависимости
от символьной строки для хранения n символовможет понадобитьсяменее nбайт.По стандартуISO синонимами для nchar являются
national charиnational character.
nvarchar [ ( n | max ) ]
Строковые данные переменной длины в Юникоде. Параметр n
определяетдлинустрокиидолжениметьзначениеот1до4000.Значениеmaxуказывает,чтомаксимальныйразмерприхранениисоставляет 2^31-1 байт (2 ГБ). Размер хранилища в байтах вдвое больше
числавведенныхсимволов+2байта.
Двоичные данные
BINARYиVARBINARYтипыподобныCHARиVARCHAR,заисключениемтого,чтоонисодержатдвоичныестроки,аненедвоичные
строки.Такимобразом,онисодержатстрокибайтов,анесимвольные
строки.Этоозначает,чтоунихнет никакогонаборасимволов,исортировкаисравнениеоснованыначисловыхзначенияхбайтоввзначениях.
Контрольные вопросы
1. Чтобудет,еслинеуказатьпослеключевогословаONпараметры:
(NAME=Sales_dat,
FILENAME=‘C:\ProgramFiles\MicrosoftSQLServer\MSSQL12.
MSSQLSERVER\MSSQL\DATA\saledat.mdf’,
SIZE=10,
MAXSIZE=50,
FILEGROWTH=5)?
2. ВкакиекатегорииобъединенытипыданныхвSQLServer?
3. Приведите примеры: для каких данных используются точные
числа,адлякакихприблизительныечисла?
4. Какимиосновнымикритерияминеобходиморуководствоваться
привыборетипасимвольныхданных?
29

Лабораторная работа 5
СОЗДАНИЕ ТАБЛИЦ С ИСПОЛЬЗОВАНИЕМ
OBJECT EXPLORER (ОБОЗРЕВАТЕЛЬ ОБЪЕКТОВ)
Цель работы: научитьсясоздаватьтаблицыврежимеобозревате-
ляобъектов.
Создайтетаблицы,представленныенадиаграммебазыданныхна
рис.5.1.
Рис5.1.Диаграммабазыданныхsales
Дляэтоговобозревателеобъектовкликнителевойкнопкоймышина
Tables,далее из контекстногоменювыберите сначалаNew,далееTable
(рис.5.2).Врезультатеоткроетсяокно,представленноенарис.5.3.
Рис.5.2.Созданиетаблицыбазыданныхsalesвобозревателеобъектов
30
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
