Лабораторная работа 4
Разработка серверной части ИС в СУБД MS SQL Server
Цель работы.
Разработать серверную часть клиент-серверной информационной системы в заданной предметной области средствами СУБД MS SQL Server:
· разработать и настроить свойства таблиц и представлений;
· создать диаграмму БД;
· создать триггеры, обеспечивающие целостность БД; хранимые процедуры; пользовательские функции различных типов.
1. ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
(См. также конспект лекций по дисциплине «Базы данных» за 5 семестр).
1.1. Особенности настройки свойств таблиц
Свойство IDENTITY
Кроме типов данных, для столбцов могут задаваться различные свойства. В частности, для одного столбца таблицы может быть задано свойство IDENTITY, которое определяет создание в столбце автоматически возрастающего значения. Это свойство имеет 2 параметра: исходное значение и инкремент, определяющий, насколько увеличивается исходное значение при генерировании каждого последующего значения. Это свойство – аналог значений autonumber (в Access – тип данных Счетчик) и autoincrementв других языках.
Свойство IDENTITY применимо к точным числовым типам: bigint, int, smallint, tinyint, decimal, numeric. Для использования с типами данных decimal, numeric необходимо приравнять в них число разрядов после запятой к нулю.
Общие рекомендации по выбору типа данных
При создании таблиц важно правильно выбрать типы данных для каждого столбца. При выборе типа данных возникают два следующих вопроса:
· Подходит ли этот тип данных для определенных данных?
· Какой тип данных использовать – с фиксированной или переменной длиной?
Данные, которые будут вводиться в столбец, должны соответствовать типу данных столбца. Поэтому, с одной стороны, тип данных должен охватывать диапазон значений, которые могли бы храниться в столбце для всего срока эксплуатации приложения, с другой стороны, требуется ограничить ненужный расход места на диске. Если все значения данных столбца будут иметь приблизительно одинаковые размеры, то лучше использовать тип данных с фиксированной длиной, так как обработка данных, имеющих типы переменной длины, вызывает повышенную нагрузку на процессор.
Типы данных с переменной длиной рекомендуется применять, если: 1) предполагаются значительные различия в длине данных, хранимых в столбце; 2) данные столбца обновляются редко. К данным с переменной длиной относятся varchar, nvarchar, varbinary, text, ntext и image. Применение типов данных с переменной длиной может привести к значительной экономии места для хранения данных. Например, если задан тип данных с фиксированной длиной, достаточной для хранения значений в столбце с наибольшей возможной длиной, то для всех значений, занимающих меньше места, истратится столько же места, как и для этого самого объемного значения. В результате возникает ненужный расход места на диске: в большинстве строк будет использовано меньше места, а все неиспользуемое место станет потерянным. При использовании типа данных с переменной длиной короткие значения будут расходовать лишь то место, которое им действительно нужно.
Преобразование типов данных
Часто возникает необходимость преобразования значения одного типа данных в значение другого типа, например, требуется конвертировать числа в символьные данные или наоборот. Для преобразования значений числовых типов данных в символьные используется специальная функция STR. Для выполнения других преобразований имеются универсальные функции CONVERT, CAST, с помощью которых можно преобразовывать значения одного типа в значения любого другого типа (если такое преобразование возможно). Функции CONVERT, CAST предлагают примерно одинаковые возможности и могут быть взаимозаменяемы.
Синтаксис этих функций:
CAST(выражение AS тип_данных)
CONVERT(тип_данных [(длина)], выражение [, стиль])
Аргумент выражение задает величину, которую нужно конвертировать. Тип, в который конвертируются данные, определяется аргументом тип_данных. Для функции CONVERT имеются также необязательные аргументы: длина – задает размерность типа данных (если для целевого типа данных существует понятие размерности); стиль - управляет стилем представления значений типов данных дата/время, денежный или нецелочисленный при конвертировании их в символьные строки с типами данных nchar, nvarchar, char, varchar.
Пример использования функции CAST - преобразование числового значения $157.27 в символьную строку ''$157.27''
Поддерживаются два метода преобразования типов данных:
- Неявное преобразование. Такие преобразования «невидимы» для пользователей. Сервер автоматически конвертирует данные от одного типа данных к другому. Например, если значение smallint сравнивается со значением int, то до сравнения smallintнеявно преобразуется к int.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.