Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 3. Общие сведения о Transact-SQL.doc
Скачиваний:
5
Добавлен:
01.04.2025
Размер:
165.38 Кб
Скачать

Конфигурационные функции

Возвращают информацию о текущей конфигурации MS SQL Server. Например:

@@Version – возвращает информацию о дате, версии и типе процессора сервера.

@@ServerName – символьное имя локального MS SQL Server.

@@Max_Connections – максимально разрешенное количество одновременных подключений к серверу.

Системные функции

Возвращают информацию о значениях, объектах и текущих параметрах MS SQL Server.

DataLength(выражение) – возвращает число, соответствующее количеству байт, необходимых для хранения результата выражения.

@@Error – код последней ошибки, произошедшей в текущем соединении. Если ошибок нет, результат равен 0.

Host_Name() – символьное имя компьютера в сети, на котором выполняется команда.

System_User и Session_User – возвращают соответственно имя учетной записи пользователя для входа и имя пользователя текущей базы данных.

@@IDLE – определяет количество миллисекунд, прошедшее со времени последнего запуска MS SQL Server.

NewID() – генерирует новое значение типа UniqueIdentifier.

Permission ([ObjectID[, ‘column’]]) – возвращает информацию о правах доступа для текущего пользователя. Аргумент ObjectID указывает идентификационный номер объекта базы данных. Для получения идентификационного номера объекта по его имени используется функция Object_ID(‘имя’).

Результатом данной функции является 32-битное значение, каждый бит которого соответствует тому или иному праву доступа. Если значение этого бита равно 1, то доступ к объекту разрешен.

Определим, например, имеет ли пользователь право выборки данных из таблицы Product БД AdventureWorks2008:

SELECT Permissions (object_id('production.product'))

Если первый младший бит результата равен 1, то выборка данных из таблицы Product разрешена.

Чтобы проверить право доступа к полю некоторой таблицы, необходимо указать идентификационный номер этой таблицы данных и в аргументе columnуказать имя этого поля. Например, для проверки возможности выборки данных из поля Stor_id таблицы Sales необходимо:

SELECT Permissions (object_id('production.product'),'ProductID')

Если первый младший бит результата равен 1, то выборка данных из поля ProductID таблицы Product также разрешена.

Отладка кода в Management Studio

В MS SQL Server 2008 появилась возможность отлаживать SQL‑код при помощи пошагового выполнения. Для этого существуют команды DebugStep Into (F11) и DebugStep Over (F10). Команда Debug – Toggle Breakpoint (F9) устанавливает точку останову, до которой будет происходить выполнение кода.

Во время отладки доступны такие окна:

  • Locals – автоматически содержит список всех локальных переменных и показывает их текущие значения;

  • Watch – позволяет вручную добавлять переменные для отслеживания их значений;

  • Callstack – показывает стек вызовов функций.

Снимок экрана во время процесса отладки показан на рис. 3.3.

Рис. 3.3. Окно отладки в Management Studio. Желтая стрелка указывает на текущую исполняемую строку; красный кружок – точка останова.

Краткие итоги. Рассмотрены типы данных, доступные в MS SQL Server 2008. Продемонстрировано использование базовых алгоритмических конструкций и локальных переменных, а также показана возможность отладки SQL-кода.

1 UTC (Universal Time Coordinated) – универсальное синхронизированное время.

14