- •Министерство образования Российской Федерации Пензенский государственный университет
- •Пенза 2004
- •Введение
- •1. Архитектура баз данных ms sql Server 2000
- •Физическая архитектура базы данных sql Server 2000
- •1.1.1. Файлы данных и группы файлов
- •1.1.2. Страничная организация файлов данных
- •ЛоГическая архитектура базы данных sql Server 2000
- •1.3. Системные базы данных sql server 2000
- •Создание и сопровождение баз данных средствами enterprise manager
- •3. Создание и сопровождение таблиц баз данных средствами enterprise manager
- •3.1. Основные принципы создания таблиц
- •3.2. Создание, модификация и удаление таблиц средствами Enterprise Manager
- •3.3. Управление диаграммами
- •4. Создание и управление индексами средствами Enterprise manager
- •5. Создание представлений средствами Enterprise manager
- •6. Основы программирования на языке Transact-sql
- •6.1. Средства языка Transact–sql
- •6.2. Константы, имена, идентификаторы, переменные, выражения в языке Transact–sql
- •6.3. Типы данных sql Server 2000
- •6.4. Создание и удаление баз данных, таблиц и представлений
- •6.4.1. Создание и удаление баз данных
- •6.4.2. Создание и удаление таблиц
- •6.4.3. Создание представлений
- •6.5. Создание и управление индексами
- •6.6. Вставка, удаление и изменение данных
- •6.7. Выборка данных
- •Раздел into позволяет создать новую таблицу для хранения результатов запроса, структура которой будет определяться списком выбора, т.Е. Динамически при выполнении запроса.
- •6.8. Функции sql Server 2000
- •6.8.1. Встроенные функции sql Server 2000
- •6.8.2. Функции пользователя
- •6.9. Хранимые процедуры sql Server 2000
- •6.9.1. Создание хранимых процедур
- •6.10. Триггеры
- •6.11. Создание и управление транзакциями
- •6.12. Создание, отладка и оптимизация sql–модулей
- •7. Лабораторный практикум
- •Создание диаграммы базы данных;
- •Рекомендуемые источники Печатные издания
- •Интернет-ресурсы1
- •Приложение 1. Примеры операторов языка Transact-sql
- •1.1. Создание баз данных
- •Create database Archive
- •Use master
- •Filegroup SalesGroup1
- •Filegroup SalesGroup2
- •Create database Sales
- •Create database Employees
- •1.2. Создание таблиц баз данных
- •1.3. Создание индексов
- •1.4. Создание представлений
- •From dbo. Authors
- •1.5. Добавление, модификация и удаление данных в таблицах
- •Insert Into TabF default values
- •Insert Into TabG (Col1,Col2)
- •1.6. Выборка данных из таблиц
- •If update (Phone)
- •Insert into #aaa values (111)
- •Insert into #aaa values (222)
- •Insert into #aaa values (333)
- •1.9. Создание пользовательских функций
- •1.10. Создание хранимых процедур пользователя
- •Приложение 2. Описание предметных областей, схем баз данных и запросов для лабораторного практикума
- •2.1. Предметная область «Летопись острова Санта-Белинда»
- •2.2. Предметная область «Скачки»
- •2.3. Предметная область «Хроника восхождений в альпинистском клубе»
- •2.4. Предметная область базы данных медицинского кооператива
- •2.5. Предметная область базы данных «Городская Дума»
- •2.6. Предметная область базы данных рыболовной фирмы
- •2.7. Предметная область база данных фирмы, проводящей аукционы
- •2.8. Предметная область база данных библиотеки
- •Предметная область базы данных для обслуживания работы конференции
- •2.10. Предметная область базы данных для обслуживания склада
3. Создание и сопровождение таблиц баз данных средствами enterprise manager
В любой системе управления базами данных таблицы играют огромную роль. Они используются для хранения всей информации, которую пользователи внесли в базу данных. С точки зрения пользователя, таблица представляет собой двумерный массив, каждая строка которого является экземпляром описываемого в таблице типа объекта. Столбцы массива представляют собой атрибуты объекта. На пересечении конкретной строки и конкретного столбца находится атрибут конкретного объекта.
3.1. Основные принципы создания таблиц
Вначале таблицы необходимо создать. Во время этой операции пользователь определяет имя таблицы, имена столбцов, тип хранимых в них данных, значения по умолчанию, возможность хранения неопределенных значений, первичный и внешний ключи и некоторые другие свойства. Создание таблиц в SQL Server 2000 возможно либо с помощью графического интерфейса Enterprise Manager, либо с помощью команд Transact-SQL. К сожалению, мастера создания таблиц в SQL Server 2000 нет.
Прежде чем приступить к непосредственному созданию таблицы, необходимо решить, какие столбцы должны быть определены в таблице, как она сама будет связана с другими таблицами, какие данные предполагается хранить в столбцах таблицы и т.д. То есть сначала нужно разработать логическую модель таблицы, которая органично вписывалась бы в общую логическую модель базы данных. Точнее, сначала должна быть разработана общая логическая модель базы данных, а уже потом – конкретные таблицы. В данном учебном пособии не рассматриваются технологии проектирования реляционных баз данных, а лишь их непосредственное создание и сопровождение средствами SQL Server 2000. Предполагается, что читатель знаком с соответствующими технологиями проектирования баз данных и с терминологией реляционных баз данных.
Основные требования, которые надо соблюдать при создании таблиц в реляционных баз данных, таковы:
каждая таблица должна иметь уникальное в базе данных имя и состоять из однотипных строк.
каждая таблица должна состоять из фиксированного числа столбцов и простых (не составных) значений в каждом столбце.
каждому столбцу должно быть присвоено уникальное в пределах таблицы имя и заданы конкретный тип данных, размер, точность.
Одной из основополагающих характеристик столбца является тип данных (data type). Тип данных определяет диапазон значений, которые можно будет хранить в столбце. Во всех таблицах тип данных столбца может быть системным, т.е. встроенным в сервер или определен самим пользователем на основе системных.
Для определения типов столбцов могут применяться не все типы данных, поддерживаемые языком Transact-SQL. В частности, для типов столбцов таблиц не могут быть выбраны типы данных cursor и table. Они служат только для работы с локальными переменными, функциями, процедурами и т.д. В свою очередь, для локальных переменных нельзя использовать некоторые типы данных, успешно поддерживаемые столбцами таблиц. К этим типам данных относятся timestamp, text, ntext и image. Подробнее о типах данных, доступных в SQL Server 2000Можно ознакомиться в разделе пособия, посвященному основам программирования на языке Transact-SQL.
При создании таблиц пользователь может для столбцов, помимо задания базовых свойств, таких, как имя, тип данных, размер и точность, указать ограничения целостности. Ограничения целостности (constraints) – это механизм контроля значений, которые могут храниться в полях строки. В SQL Server 2000 поддерживаются следующие ограничения целостности:
Check – с помощью логических условий налагает ограничение на значения, которые могут храниться в столбце;
Null – задает возможность хранения неопределенных значений;
Default – определяет значение по умолчанию;
Unique – гарантирует уникальность значений в столбце;
Primary Key – определяет первичный ключ;
Foreign Key – определяет внешний ключ;
No Action – предписывает не выполнять в зависимой таблице никаких действий при удалении или обновлении строк в главной таблице;
Cascade – в данном случае будет осуществляться каскадное изменение значений в зависимой таблице при внесении изменений в главную таблицу.
Каждая база данных имеет свой собственный набор таблиц, посмотреть который можно средствами Enterprise Manager, открыв папку Tables. При открытии папки Tables базы данных в правом окне Enterprise Manager появляется список таблиц со следующими атрибутами: имя таблицы, владелец (обычно владелец базы данных data base owner-dbo), тип (пользовательская или системная) и дата создания таблицы. Для просмотра самой таблицы следует дважды щелкнуть по ней или в ее контекстном меню исполнить команду Properties.
Рисунок 7. Окно свойств таблицы (Table Properties) базы данных
В открывшемся окне представлены все свойства таблицы и ее столбцов. Кнопка Permission позволяет просмотреть и отредактировать права доступа к таблице: SELECT, INSERT, UPDATE, DELETE, EXES и DRI. Щелкнув по столбцу таблицы, можно просмотреть и отредактировать права доступа к столбцу. Если установлена на сервере служба MSSearch, то с помощью вкладки Full-text Indexing можно отредактировать параметры этой службы.