Всего 188 статей  1 2 3  »

В SQL Server есть как детерминированные, так и недетерминированные функции. Детерминированной считается функция, которая возвращает одинаковые результаты, если ее вызывают с одним и тем же набором входных параметров. Недетерминированной называется функция, если при вызове с одним и тем же набором входных параметров она может возвращать различные результаты.

Язык управления ходом выполнения состоит из специальных слов, которые контролируют ход выполнения операторов Transaet-SQL, блоков операторов и хранимых процедур. Эти слова можно использовать в операторах Transact-SQL, пакетах и хранимых процедурах

Если язык управления ходом выполнения не используются, отдельные операторы Transact-SQL выполняются последовательно, в том порядке, в каком они расположены. Язык управления ходом выполнения допускает объединение связанных операторов Он также позволяет сделать их взаимозависимыми. При этом один оператор языка управления ходом выполнения не может относиться сразу к нескольким пакетам или хранимым процедурам.

В SQL Server 2000 предусмотрено несколько методов исполнения операторов Transact-SQL. Можно исполнить одиночный оператор или несколько операторов в виде пакета (который является группой из одного или нескольких операторов Transact-SQL). Операторы Transact-SQL также можно исполнять в хранимых процедурах и триггерах. На этом занятии вы познакомитесь с различными методиками исполнения операторов, а также узнаете о способах исполнения в зависимости от применяемой методики и об исполнении операторов Transact-SQL с помощью сценариев.

Обработка одиночных операторов является основным способом исполнения операторов SQL в SQL Server 2000. Проще всего обработку оператора проиллюстрировать на примере оператора SELECT.

SELECT относится к непроцедурным операторам — он не определяет конкретных шагов, которые должен выполнить сервер баз данных для выборки запрошенных данных. Другими словами, чтобы определить наиболее эффективный способ извлечения запрошенных данных, сервер баз данных должен проанализировать оператор. Этот процесс называется оптимизацией оператора SELECT, а выполняет его оптимизатор запросов.

Пакет — это набор из одного или нескольких операторов, которые клиент отсылает как единую группу. При компиляции каждого пакета получается один план исполнения. Если пакет состоит из нескольких операторов SQL, то из всех оптимизированных шагов, необходимых для исполнения каждого оператора, формируется единый план исполнения. Для того чтобы задать пакет, имеется несколько способов.

SQL Server 2000 хранит только исходный текст хранимых процедур и триггеров. Когда хранимая процедура или триггер исполняется первый раз, исходный текст компилируется в план исполнения. Если до того, как план исполнения устареет и будет удален из памяти, хранимая процедура или триггер исполняется снова, реляционный механизм обнаруживает существующий план и использует его повторно. Если план устарел и удален из памяти, создается новый план исполнения. Этот процесс напоминает обработку SQL Server 2000 всех операторов SQL Увеличение производительности при применении хранимых процедур и триггеров объясняется постоянством их SQL-операторов, что позволяет SQL Server использовать для них существующие планы исполнения.

Сценарий - это набор операторов Transact-SQL, сохраненных в файле. Этот файл можно ввести в SQL Query Analyzer или утилиты osql и isql Они способны исполнить операторы SQL, хранящиеся в файле.

Сценарии Transact-SQL состоят из одного или нескольких пакетов. Конец пакета отмечается командой GO, Если в сценарии Transact-SQL нет ни одной команды GO, он исполняется как один пакет.

Рис. 3-2. Таблица без уникального идентификатора

Таблицу можно нормализовать, добавив столбец, уникально идентифицирующий каждую строку (рис. 3-3). Обратите внимание, что у каждого экземпляра строки с именем David Mendlen есть идентификатор (EmplD) с уникальным значением. В таблице должны храниться сведения лишь об одном типе объектов

Рис. 3-6. Две возможные структуры таблицы Books

Если необходимо хранить список значений в одном столбце или создать несколько столбцов для хранения одной единицы информации (Author1, Author2 и т.д.), следует предусмотреть размещение дублирующихся данных в другой таблице, связанной с главной. Для таблицы Books можно создать дополнительную главную таблицу, где хранить сведения об авторах, а затем — третью таблицу, в которой будут сопоставлены названия книг с их авторами. Последняя таблица обеспечивает хранение повторяющихся значений (рис. 3-7). Такая структура позволяет описать книгу с любым числом авторов без изменения определения таблицы и не допускает наличия пустых мест при сохранении информации о книгах с одним автором.

«Один ко многим» — наиболее распространенный тип связи. При этом типе связи одной строке таблицы А может соответствовать множество строк таблицы В, но любой строке таблицы В может соответствовать только одна строка таблицы А. Например, в таблицах Publishers и Titles используется связь «один ко многим». Каждое издательство выпускает много книг, но любая книга выходит только в одном издательстве. Связь «один ко многим» возможна, если только один из связанных столбцов является первичным ключом или имеет ограничение, обеспечивающее уникальность.

Это упражнение посвящено главным объектам, содержащимся в базе данных SQL Server. Вы попрактикуетесь в применении принципов нормализации структуры баз данных и определении связей, существующих между сущностями базы данных. Чтобы выполнить это упражнение, необходимо зарегистрироваться в качестве администратора на компьютере под управлением Windows 2000 Server. Кроме того, вам понадобится SQL Query Analyzer и SQL Server Enterprise Manager, а также бумага и ручка или карандаш.

1. В меню Start выберите пункт Programs\MicrosoflSQL Server. Далее щелкните Enterprise Manager.

Появляется SQL Server Enterprise Manager.

2. На вкладке Tree раскройте узел Microsoft SQL Servers и группу SQL Server Group, затем раскройте узел локального компьютера и далее — Databases и базу данных Pubs.

База данных состоит из основной группы файлов и пользовательских групп файлов. Группа файлов, в которую входит основной файл, называется основной группой файлов. При создании базы данных в основной группе размещаются основной файл данных и любые другие файлы, не вошедшие в другие группы. Системные таблицы размещаются в основной группе файлов. Если свободное место в основной группе файлов заканчивается, добавить новые данные каталога к системным таблицам невозможно. Заполнение основной группы файлов происходит, только если отключен параметр autogrow или заканчивается свободное место на всех дисках, несущих файлы основной группы. В такой ситуации следует включить параметр autogrow или убрать с дисков ненужные файлы, чтобы освободить место.

Средства окна Object Search позволяют осуществлять поиск объектов на текущем сервере баз данных. Окно Object Search появляется при нажатии кнопки на панели инструментов или выполнении команды Object Search из меню Tools. На рис. 2-11 показан результат поиска всех объектов «пользовательская таблица» в базе данных Northwind.

1. В меню Start выберите Programs, затем - Microsoft SQL Server и щелкните Query Analyzer.

После запуска SQL Query Analyzer выводится диалоговое окно Connect To SQL Server.

2. В раскрывающемся списке SQL Server выберите Local. Если этот пункт отсутствует в списке, щелкните кнопку с эллипсом чтобы найти локальный компьютер (тот, на котором вы работаете).

1. На панели Editor замените слово customers на custom.

2. Щелкните кнопку Execute Query на панели инструментов.

Обратите внимание, что на панели Results активна вкладка Messages. На ней отображается сообщение об ошибке, в котором говорится, что custom — неверное имя объекта.

Transact-SQL позволяет администрировать SQL Server, создавать любые его объекты и управлять ими, а также добавлять, извлекать, модифицировать и удалять любые данные из таблиц SQL Server. Transact-SQL является расширением языка, определенного в стандартах SQL, которые опубликованы организациями ISO (International Organization for Standardization) и ANSI (American National Standards Institute). На этом занятии вы познакомитесь с языком Transact-SQL и различными типами его операторов, которые используются в SQL Server, в том числе с операторами языка определения данных (Data Definition Language, DDL), языка управления данными (Data Control Language, DCL) и языка манипулирования данными (Data Manipulation Language, DML).

Оператор ALTER TABLE позволяет модифицировать определение таблицы посредством изменения, добавления или удаления столбцов и ограничений, а также активации и деактивации ограничений и триггеров. Следующий оператор изменит таблицу Importers в базе данных Northwind. добавив в нее столбец под названием ContactTitle.

Оператор DELETE удаляет строки из таблицы. Следующий оператор удаляет из таблицы Territories (БД Northwind) строку со значением TerritorylD, равным 98101.

USE Northwind

DELETE FROM Territories

WHERE TerritorylD = 98101

Ключевое слово FROM является необязательным. Его можно указать между DELETE и именем целевой таблицы, представления или функции для лучшей читаемости программы.

1. В меню Start выберите Programs, затем - Microsoft SQL Server и щелкните Query Analyzer.

После запуска SQL Query Analyzer выводится диалоговое окно Connect To SQL Server.

2. В раскрывающемся списке SQL Server выберите Local. Если это пункт отсутствует в списке, щелкните кнопку с эллипсом, чтобы найти локальный компьютер (тот, на котором вы работаете).

Всего 188 статей  1 2 3  »
17 мая Recon Scout XT представляет собой портативного робота, которого можно отправлять в неизвестную среду.
16 мая Благодаря Makey Makey любые объекты можно превратить в клавиши компьютерной клавиатуры или мыши и использовать их для управления игрой
15 мая Новая охлаждающая технология подходит не только для бронежилетов, но и для других подобных вариантов, в том числе камуфляжа и рюкзаков.