Типы баз данных SQL Server 2000 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Типы баз данных SQL Server 2000



Компоненты клиент-сервер.

1) клиенты посылают операторы SQL, используя протокол прикладного уровня SQL-сервера под названием «Поток табличных данных» - Table Data Stream. Эти пакеты создаются компонентом доступа OLE DB или динамически подключаемой библиотекой DB-Library. Спецификация OLE DB разработана с целью развития успеха технологии OLE BC за счет предложения открытого стандарта для доступа к данным любого типа.

2) пакеты TDS передаются клиентской библиотеке net-library, которая упаковывает их в пакеты сетевого протокола – TCP/IP, Net Beat, IPX/SPX, пакет содержит следующую информацию: передаваемые данные, сведения о ПК отправителя, ПК получателя и контрольную сумму байтов.

3) Серверная сетевая библиотека Net-library получает сетевые пакеты, извл. Из них пакеты TDS и передает их механизму реляционных баз данных. Сетевые библиотеки, которых может быть несколько, управляются службой OPEN DATA посредством внутреннего интерфейса.

Для того, чтобы SQL-сервер мог бы взаимодействовать с ПК клиента с помощью одного из сетевых протоколов, соответствующая сетевая библиотека должна быть установлена не только на сервере, но и на клиенте. SQL-сервер может поддерживать несколько клиентов из разных сетей одновременно, но на клиенте может быть только одна из тех, что есть на SQL-сервере.

4) РМ распознает, что к нему пришла реляционная база. Происходит обработка запроса, открываются нужные таблицы, определяются права доступа к базе данных.

5) Машина хранения запускает запрос на выполнение и осуществляет передачу назад клиенту полученных данных.

 

Службы SQL Server 2000

MS SQL Server: реализует основные функции SQL-сервера:

§ Выполнение хранимых процедур;

§ Управление данными и журналом транзакций;

§ Проверка учетных записей юзера;

§ Выполнение запросов и команд транзакт-SQL;

§ Эффективно распределяет ресурсы ОС между множественными подключениями к серверу пользователей, оптимизируя и запараллеливая из запросы для улучшения производства;

§ Осуществляет проверку целостности данных и работу механизма транзакций

SQL Server Agent: реализует часть SQL-сервера, отвечающую за автоматическое исполнение заданий и извещение операторов об ошибках в работе сервера.

Запуск службы необязателен для пользователя, она полезна для администратора, так как автоматизирует поставленные задачи.

Работа этой службы реализуется с помощью 3 объектов:

§ Задания (автоматически по расписанию или вручную) – job;

§ Оповещение – описывает события, при которых операторам будут отправлены сообщения о произошедших на сервере неприятностях – alert;

§ Описываются операторы – лица, отвечающие за обслуживание SQL-сервера. Когда на сервере на сервере происходит сбой службы SQL Server Agent, анализирует ситуацию и отправляет оператору по e-mail или на пейджер;

MS Search: позволяет реализовать поиск инфы в таблицах БД

MS DTC: используется, если работает несколько БД на серверах.

 

Типы баз данных SQL Server 2000

Master: используется для хранения информации обо всех параметрах конфигурации SQL-сервера. Информации об учетных записях пользователей, сведения обо всех БД сервера, в том числе и о расположении их основных файлов. Рекомендуется всегда выполнять резервное копирование этой БД после любого изменения, хранящиеся в ней БД.

DATA/MASTER.mdf – основной файл

DATA/MASTER.ldf – журнал транзакций.

 

MSDB: используется службой SQL Server Agent, для хранения информации о заданиях, операторах, оповещениях и расписании выполненных заданий.

MODEL: представляет собой шаблон для отдельных пользовательских БД (по ней строятся пользовательские БД). Она содержит необходимые системные таблицы для каждой БД, в ней можно создать любые объекты, пользовательские типы данных, пользователей имеющих доступ к БД, права пользователей.

TEMP DB: содержит все временные объекты, таблицы и другие объекты, не требуется специальных прав. Доступ к временным таблицам можно получить как из БД, создавших эту таблицу, так и из других.

#object – локальные объекты, ##object – глобальные объекты.

 

Объекты БД SQL Server 2000

1. Таблица(Table) - основная единица хранения БД в реяционных БД, хранящая информацию о сущности объекта.

2. Тип данных (Data Type) – SQL-сервер предлагает системные типы данных и пользовательские созданные на основе системных.

3. Ограничение(Constraint) - выражение ограничивающее ввод значения в поле

Check-действует на уровне колонки и ограничивает диапазон значений, который может быть сохранен в колонке. (Check 0<[курс]<=5)

Primary Key-ограничение целостности действует на уровне колонки или таблицы может состоять из одного или нескольких полей и следит за тем чтоб в столбце были уникальные значения.

Unique-обеспечивает ввод уникальных значений их может быть несколько в таблицах.

Foreign Key- создается на уровне таблицы для ссылочной целостности данных.

Null или NOT_Null действует уровне колонки разрешает или запрещает ввод пустых значений.

4. Default - значение по умолчанию (вносимое в поле если его не задали).

5. Rule - информация о параллельных значениях для поля.

6. Index - структура для быстрого поиска информации.

7. Представление (View) - способ просмотра данных из одной или нескольких таблиц. Представляет собой виртуальную таблицу определяемую запросом. Для пользователя выглядит как таблица, но не содержит данные, а лишь представляет их из таблиц.

8. User Defined (??хз??data type) - предназначен для часто выполняемых лог задач

9. Stored procedure (sp_(help)) откомпилированный набор SQL выражений и управления конструкциями, которые хранятся на сервере.

10. Trigger - вид хранимой процедуры запускается при изменении данных в таблице. В зависимости от выполняемых действий, которые приводят к запуску триггера, делятся:

Update Trigger

Insert Trigger

Delete Trigger

для таблицы может быть создано несколько триггеров каждого типа.

 

 

Разграничение доступа к информации. Основные понятия и общие правила разграничения доступа

Разграничение доступа к информации- это приводит к наиболее эффективному контролю работы пользователя отслеживать произведенные операции и осуществлять перспективное планирование.

Общие правила разграничения доступа

1. Заключается в определении круга пользователей, которые будут иметь доступ к БД

2. Заключается в определении действий, которые может выполнить в БД конкретный пользователь

 

Архитектура систем безопасности SQL Server 2000

(1. Проверка подлинности прав пользователя – аутентификация

А) windows (если организация небольшая и должности БД совмещает 1 человек) Б) SQL-Sever(если организация большая и должности БД выполняют разные люди)

2. проверка разрешения доступа к БД

Фундамент системы безопасности: учетная запись(login), пользователи(users), роли(role), группы(group)

§ Физическая безопасность

§ Подразумевает защиту доступа к инфраструктуре, содержащий внутренние сетевые компоненты и серверное оборудование, поддерживающее работу SQL Server.

§ Безопасность сетевого протокола

§ Включает в себя такие компоненты, как изоляция транспортного потока и шифрование компонентов.

§ Доменная безопасность

§ Реализуется в сетях Microsoft с помощью каталога ActiveDirectory (AD)

§ Безопасность локального компьютера

§ Поддержка прав доступа к файлам и реестру, поддержку служб шифрования

§ Средства безопасности SQL Server

§ Делится на 4 типа:

• Аутентификация

• Авторизация

• Аудит

• Шифрование

§ Безопасность приложений

§ Приложение может расширять возможности SQL Server, дополняя ее собственными безопасностями

 

Учетные записи и группы

При установке SQL-Server создаются 2 стандартные учетные записи:

1. BUILTIN/Administrator – по умолчанию она представляет встроенные роли системного администратора и не может быть изменена. Её не рекомендуется использовать в SQL Servere

2. SA – рекомендуется оставить на крайний случай, когда сисадмин окажутся недоступными. А вместо этого следует создать новых пользователей и включить их в административную группу сисадминов

 

Типы ролей

Роли БД позволяют объединить пользователей в одну административную единицу и работать с ней как с обычным польз. В роль БД можно включить пользователей и роли SQL Servera; пользователей и группы Windows, которым предварительно предоставлен доступ к нужной БД; с помощью Enterprise Manager в роль БД можно добавить только польз БД. Роль Public-ее членами являются все польз имеющие доступ к БД. Прикладные роли – не содержат членов и должны передавать пароль, они разработаны для управления привилегиями польз обращающихся к БД через некоторые приложения

 

Файлы и группы файлов

У каждого файла БД может быть 2 имени:

1) Local File Name – логическое, используется в командах Transact SQL при ссылке на конкретный файл

2) OS File Name – физическое, имя файла в ОС, под которым хранится на диске

Группы:

1) Primary file group – основная, содержит основной файл и все файлы на включенные в другие группы. Может быть только 1 в БД

2) User define file group- пользовательская, в эту группу включаются все файлы указанные в параметреfile group при создании или изменении БД. Может быть несколько

3) Default group file- по умолчанию, одна из групп файлов созданных в БД может быть назначена в качестве группы файлов по умолчанию.

Основы TRANSACT SQL

1) DDL- язык определения данных(управляются все структуры данных, строк, определение ключа, распределение файлов)

CREATE – имя объекта

ALTER – модификация объекта

DROP- удаление объекта

DML-язык модификации

Select-оператор выборки

Insert- добавление записей в таблицу

Update – изменение данных в таблице

Delete – удаление записей из таблицы

DCL- язык управления данных (применяется для управления правами доступа к объектам БД)

Grant – создает в системе безопасности запись, которая позволяет пользователю работать с текущей БД и с хранящейся в ней информации

Revoke – анализирует ранее предоставленное или запрещенное пользователем разрешений для текущей БД

Deny – создает в системе безопасности элемент, который отказывает в предоставлении учетной записи прав доступа в БД и предотвращает наследование учетной записи этого права доступа по средствам членства у группе или роли.

 

Синтаксические элементы языка T-S и исполнение операторов T-S. Примеры

В TRANSACT SQL входит много синтаксических элеметнов, которые используются большинством операторов или оказывают на них влияние.

1) Идентификаторы:

обычные и с ограничителями

2) Дополнительные элементы языка

Локальные переменные

Операции (арифметические, сравнения, объединения)

Функции (пользовательские, встроенные)

Исполнение операторов T-S

Операторы можно исполнить, как одиночным или несколько операторов в виде пакета. Так же операторы выполнять в хранимых процедурах и триггерах.

Основной способ- способ запуска одиночных операторов

Пакет- это группа из одного или нескольких операторов T-S, которые приложения одновременно посылает на SQL Server на исполнение

SQL Server компилирует операторы пакета в единицу исполнимую единицу (план исполнения), после этого по очереди исполняются операторы этого плана. В случае ошибок, ни один из операторов пакета, не исполняется

 

 

Создание и управление БД SQL Server. Просмотр результатов работы. Примеры

Имя БД должно соответствовать правилам, определенным для аутентификаторов.

Способы создания БД:

1 CREATE DATABASE имя БД

2 Enterprise Manager

3 Мастер

Управление БД:

1 sp_helpdb имя БД

2 Enterprise Manager

3 Data Base PROPERTYEX

 

Создание таблиц и управление ими. Просмотр результатов работы. Примеры

В определении таблицы должно входить как минимум имя таблицы, имена столбцов. А также указание того, допустимы ли пустые клетки.

 

Таблицы создаются командой CREATE TABLE. Эта команда создает пустую таблицу - таблицу без строк. Значения вводятся с помощью DML команды INSERT Команда CREATE TABLE в основном определяет им таблицы, в виде описания набора имен столбцов указанных в определенном порядке. Она также определяет типы данных и размеры столбцов. Каждая таблица должна иметь по крайней мере один столбец.

Синтаксис команды CREATE TABLE:

CREATE TABLE <TABLE-NAME> (<COLUMN name> <DATA type>[(<SIZE>)], <COLUMN name> <DATA type> [(<SIZE>)]...);

Выборка данных из БД SQL Server.Примеры

Помню только Select

Синтаксис: Select * From <BD>

* - это все что угодно(могут быть конкретные понятия)

<BD>-База данных из которой ведется выборка

-

Для извлечения записей из таблиц в SQL определен оператор SELECT. С помощью этой команды осуществляется не только операция реляционной алгебры "выборка" (горизонтальное подмножество), но и предварительное соединение (join) двух и более таблиц. Это наиболее сложное и мощное средство SQL, полный синтаксис оператора SELECT имеет вид:

SELECT [ALL | DISTINCT] <список_выбора>

FROM <имя_таблицы>,...

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

[ GROUP BY <имя_столбца>,... ]

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

[ ORDER BY <имя_столбца> [ ASC | DESC],... ]

Модификация данных в базе данных SQL Server. Просмотр результатов работы. Примеры

насчет Alter table не знаю, но вот Update использовать так:

Update Таблица

Set "ИзменяемыйСтолбец"="НовоеЗначение"

Where "Ориентир.Столбец"="Ориент.Значение"

К примеру

Update Работники

Set Зарплата=2000

Where КодРаботника=1001

Изменяет столбец Зарплата, у работника с ID 1001

Структура индексов. Создание и администрирование индексов. Пример.

Индекс-это указатель на данные в таблице. Индекс в базе данных подобен предметному указателю в книге

Форма оператора Create Index, как формы многих других операторов Sql, может варьироваться в зависимости от конкретной реализации языка. Чтобы выяснить корректный синтаксис, надо обратиться к документации по той конкретной реализации языка, которую вы используете. Многие реализации поддерживают следующий синтаксис оператора:

Create [UNIQUE] Index имя_индекса

ON имя_таблицы (имя_столбца [ASC|DESC] [,…n])

Удаление индекса

Drop Index имя_индекса

Типы индексов

В среде Sql Server реализовано два типа индексов:

Ø Кластерные индексы (Clustered);

Ø Некластерные индексы (Nonclustered).

 

Кроме типа (кластерный или некластерный), индекс имеет ряд других свойств. Его можно определить как:

Øуникальный – в нем не допускается дублирование записей;

Øсоставной – ключ такого индекса состоит из нескольких полей;

Øс коэффициентом заполнения, допускающим увеличение страниц индекса при необходимости;

Øс разрешенным индексом (pad index) для изменения объема памяти, выделенного для размещения промежуточных уровней В-дерева;

Øс упорядочением ключей индекса (по возрастанию или по убыванию).

 

Создание Некластерного Индекса

Create Nonclustered Index TitleSoldStatus

On Books(title,sold)

Создание Кластерного индекса

Create Unique Clustered Index CustomerOrder

ON Orders(CustomerID,OrderID)

With FillFactor=70

Ограничение Primary Key и Unique. Сходства и различия. Способы создания. Просмотр результатов работы. Примеры

Когда к существующему столбцу (или столбцам) таблицы добавляется ограничение PRIMARY KEY, происходит проверка данных, для удовлетворения условии:

- отсутствие пустых значений;

- Отсутствие повторяющихся значений.

Следующий оператор CREATE TABLE создает таблицу Table1 и определяет в качестве ее первичного ключа столбец Coll:

Create Table Table1

(

Col1 INT PRIMARY KEY,

Col2 VARCHAR(30)

)

Чтобы модифицировать ограничение PRIMARY KEY с помощью TransactSQL, сначала следует удалить существующее определение ограничения PRIMARY KEY, а затем создать новое определение. Еще один способ - добавить ограничение PRIMARY KEY к существующей таблице с помощью оператора ALTER TABLE:

 

Alter Table Table1

Add ConstraInt table_pk Primary Key (Col1)

 

Ограничение UNIQUE может быть создано как часть определения таблицы при ее создании. Ограничение UNIQUE может быть добавлено к уже существующей таблице при условии, что столбец или комбинация столбцов, на которых оно основывается, содержат только уникальные значения. Таблица может содержать несколько ограничений UNIQUE.

Если ограничение UNIQUE уже существует, оно может быть изменено или удалено.

CREATE TABLE Customers

(Snum integer UNIQUE NOT NULL,

Sname char (10) UNIQUE NOT NULL,

city char (10),

comm decimal);

PRIMARY KEY по сути альтернатива — UNIQUE. Только UNIQUE легко допускает ввод неопределенных значений и допускается добавления множества ограничений.

26. Ограничения Foreign Key и Chek. Примеры их создания. Просмотр результатов работы

Ограничения CHECK можно создавать как часть определения таблицы при ее

создании. Если таблица уже существует, можно добавить ограничение CHECK. Таблицы и столбцы могут содержать несколько ограничений CHECK. Если ограничение CHECK уже существует, его можно изменить или удалить.

Пример

Alter table Authors

ADD CONSTRAINT authors_ck

CHECK (YearBorn>1900 AND YearBorn<2004)

 

Чтобы изменить ограничение CHECK, нужно, прежде всего удалить существующее

ограничение CHECK и повторно создать его с новым определением.

Ограничение FOREIGN KEY создают одним из следующих методов:

• во время создания таблицы (в составе определения таблицы);

• добавлением к существующей таблице при условии, что ограничение FOREIGN KEY связано с существующим ограничением PRIMARY KEY или UNIQUE из другой (или это же) таблицы.

 

Это же ограничение можно создать, определив его на уровне таблицы:

Create Table Table1

(

Col1 Int Primary Key,

Col2 Int,

ConstraInt col2_fk Foreign Key (Col2)

References Employees (EmployeeID)

)

 

FOREIGN KEY можно добавить с помощью оператора ALTER TABLE:

Alter Table Table1

Add ConstraInt col2_fk Foreign Key(Col2)

References Employees (EmployeeID)

Компоненты клиент-сервер.

1) клиенты посылают операторы SQL, используя протокол прикладного уровня SQL-сервера под названием «Поток табличных данных» - Table Data Stream. Эти пакеты создаются компонентом доступа OLE DB или динамически подключаемой библиотекой DB-Library. Спецификация OLE DB разработана с целью развития успеха технологии OLE BC за счет предложения открытого стандарта для доступа к данным любого типа.

2) пакеты TDS передаются клиентской библиотеке net-library, которая упаковывает их в пакеты сетевого протокола – TCP/IP, Net Beat, IPX/SPX, пакет содержит следующую информацию: передаваемые данные, сведения о ПК отправителя, ПК получателя и контрольную сумму байтов.

3) Серверная сетевая библиотека Net-library получает сетевые пакеты, извл. Из них пакеты TDS и передает их механизму реляционных баз данных. Сетевые библиотеки, которых может быть несколько, управляются службой OPEN DATA посредством внутреннего интерфейса.

Для того, чтобы SQL-сервер мог бы взаимодействовать с ПК клиента с помощью одного из сетевых протоколов, соответствующая сетевая библиотека должна быть установлена не только на сервере, но и на клиенте. SQL-сервер может поддерживать несколько клиентов из разных сетей одновременно, но на клиенте может быть только одна из тех, что есть на SQL-сервере.

4) РМ распознает, что к нему пришла реляционная база. Происходит обработка запроса, открываются нужные таблицы, определяются права доступа к базе данных.

5) Машина хранения запускает запрос на выполнение и осуществляет передачу назад клиенту полученных данных.

 

Службы SQL Server 2000

MS SQL Server: реализует основные функции SQL-сервера:

§ Выполнение хранимых процедур;

§ Управление данными и журналом транзакций;

§ Проверка учетных записей юзера;

§ Выполнение запросов и команд транзакт-SQL;

§ Эффективно распределяет ресурсы ОС между множественными подключениями к серверу пользователей, оптимизируя и запараллеливая из запросы для улучшения производства;

§ Осуществляет проверку целостности данных и работу механизма транзакций

SQL Server Agent: реализует часть SQL-сервера, отвечающую за автоматическое исполнение заданий и извещение операторов об ошибках в работе сервера.

Запуск службы необязателен для пользователя, она полезна для администратора, так как автоматизирует поставленные задачи.

Работа этой службы реализуется с помощью 3 объектов:

§ Задания (автоматически по расписанию или вручную) – job;

§ Оповещение – описывает события, при которых операторам будут отправлены сообщения о произошедших на сервере неприятностях – alert;

§ Описываются операторы – лица, отвечающие за обслуживание SQL-сервера. Когда на сервере на сервере происходит сбой службы SQL Server Agent, анализирует ситуацию и отправляет оператору по e-mail или на пейджер;

MS Search: позволяет реализовать поиск инфы в таблицах БД

MS DTC: используется, если работает несколько БД на серверах.

 

Типы баз данных SQL Server 2000

Master: используется для хранения информации обо всех параметрах конфигурации SQL-сервера. Информации об учетных записях пользователей, сведения обо всех БД сервера, в том числе и о расположении их основных файлов. Рекомендуется всегда выполнять резервное копирование этой БД после любого изменения, хранящиеся в ней БД.

DATA/MASTER.mdf – основной файл

DATA/MASTER.ldf – журнал транзакций.

 

MSDB: используется службой SQL Server Agent, для хранения информации о заданиях, операторах, оповещениях и расписании выполненных заданий.

MODEL: представляет собой шаблон для отдельных пользовательских БД (по ней строятся пользовательские БД). Она содержит необходимые системные таблицы для каждой БД, в ней можно создать любые объекты, пользовательские типы данных, пользователей имеющих доступ к БД, права пользователей.

TEMP DB: содержит все временные объекты, таблицы и другие объекты, не требуется специальных прав. Доступ к временным таблицам можно получить как из БД, создавших эту таблицу, так и из других.

#object – локальные объекты, ##object – глобальные объекты.

 

Объекты БД SQL Server 2000

1. Таблица(Table) - основная единица хранения БД в реяционных БД, хранящая информацию о сущности объекта.

2. Тип данных (Data Type) – SQL-сервер предлагает системные типы данных и пользовательские созданные на основе системных.

3. Ограничение(Constraint) - выражение ограничивающее ввод значения в поле

Check-действует на уровне колонки и ограничивает диапазон значений, который может быть сохранен в колонке. (Check 0<[курс]<=5)

Primary Key-ограничение целостности действует на уровне колонки или таблицы может состоять из одного или нескольких полей и следит за тем чтоб в столбце были уникальные значения.

Unique-обеспечивает ввод уникальных значений их может быть несколько в таблицах.

Foreign Key- создается на уровне таблицы для ссылочной целостности данных.

Null или NOT_Null действует уровне колонки разрешает или запрещает ввод пустых значений.

4. Default - значение по умолчанию (вносимое в поле если его не задали).

5. Rule - информация о параллельных значениях для поля.

6. Index - структура для быстрого поиска информации.

7. Представление (View) - способ просмотра данных из одной или нескольких таблиц. Представляет собой виртуальную таблицу определяемую запросом. Для пользователя выглядит как таблица, но не содержит данные, а лишь представляет их из таблиц.

8. User Defined (??хз??data type) - предназначен для часто выполняемых лог задач

9. Stored procedure (sp_(help)) откомпилированный набор SQL выражений и управления конструкциями, которые хранятся на сервере.

10. Trigger - вид хранимой процедуры запускается при изменении данных в таблице. В зависимости от выполняемых действий, которые приводят к запуску триггера, делятся:

Update Trigger

Insert Trigger

Delete Trigger

для таблицы может быть создано несколько триггеров каждого типа.

 

 

Разграничение доступа к информации. Основные понятия и общие правила разграничения доступа

Разграничение доступа к информации- это приводит к наиболее эффективному контролю работы пользователя отслеживать произведенные операции и осуществлять перспективное планирование.

Общие правила разграничения доступа

1. Заключается в определении круга пользователей, которые будут иметь доступ к БД

2. Заключается в определении действий, которые может выполнить в БД конкретный пользователь

 



Поделиться:


Последнее изменение этой страницы: 2016-04-07; просмотров: 346; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.137.171.121 (0.124 с.)