Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lektsia_2SUBD.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
685.06 Кб
Скачать

Утилита isql

Утилита ISQL взаимодействует с SQL Server через API-интерфейс DB-LIB; с ее помощью можно исполнять интерактивные операторы T-SQL, хранимые процедуры и файлы сценариев. API-интерфейс DB-LIB остался на уровне функциональности SQL Server 6.5, поэтому приложение ISQL не поддерживает некоторые возможности SQL Server 2000. Например, ISQL не может извлекать данные из типа данных ntext (в кодировке Unicode).

Утилита osql

Утилита OSQL появилась в SQL Server 7 и осталась в SQL Server 2000 в качестве замены для ISQL. Утилиты ISQL и OSQL очень во многом сходны, но OSQL для коммуникации с SQL Server применяет API-интерфейс ODBC (Open Database Connectivity), а не DB-LIB, и OSQL поддерживает все возможности SQL Server 2000. Во всем остальном OSQL и ISQL функционируют одинаково. SQL Server 2000 поддерживает обе этих утилиты, однако, чтобы не столкнуться с проблемами, о которых мы упомянули, следует пользоваться OSQL, а не ISQL.

Чтобы исполнять OSQL из окна с приглашением командной строки (из окна MS-DOS), нужно просто запустить программу OSQL.exe с соответствующими параметрами, например, так:

osql –U имя_пользователя –P пароль –S имя_сервера

Когда OSQL установит соединение с SQL Server, появится такое приглашение с номером:

1>

После этого приглашения можно вводить операторы T-SQL, например, такой оператор:

1> sp_helpdb master

2> go

В результате его выполнения будет выдана информация о базе данных master. Ключевое слово go не является оператором T-SQL, это – команда, распознаваемая ISQL, OSQL и Query Analyzer и обозначающая завершение пакета операторов T-SQL. Вывод от исполнения таких интерактивных запросов будет выдаваться в окне с приглашением командной строки.

Чтобы удалить базу данных при помощи команды T-SQL:

DROP DATABASE

Помните, что удаление базы данных является неотменяемым действием. Для удаления баз данных применяется T-SQL-команда DROP DATABASE.

Ниже показаны команды, которые удалят базу данных MyDB и все ее файлы:

USE master--Для запуска команды DROP DATABASE вы должны

GO --применять базу данных master

DROP DATABASE MyDB --Единственным параметром этой команды является имя удаляемой базы данных.

GO

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

Если при наборе командных строк OSQL вы допустили опечатку, то, воспользовавшись командой RESET, можно снова вернуться к приглашению первой строки:

1> sp_helpbd

2> reset

1> sp_helpdb

2> go

Для завершения работы с утилитой OSQL введите команду QUIT или EXIT. Команду или запрос, исполняющуюся в текущий момент времени, можно завершить, нажав Ctrl+C (выход из утилиты OSQL при этом не произойдет).

Утилита OSQL имеет и другие параметры кроме -U, -P и -S. Полное описание всех параметров и дополнительную информацию об утилите OSQL вы найдете в Books Online, в теме "osql Utility".

Создав свои собственные сценарии, вы получите замечательную возможность для многократного запуска операторов и хранимых процедур T-SQL. Сценарий (script) – это просто файл, в котором содержатся операторы T-SQL, которые нужно запускать. В скрипте может быть как один оператор, так и последовательность операторов. Мы сразу дадим одну рекомендацию: создавая сценарии T-SQL, давайте именам их файлов расширение .sql, тогда вам будет легче находить эти файлы.

Ниже дан пример кода простого сценария:

use MyDB

go

sp_helpdb MyDB

go

sp_helpfilegroup

go

sp_spaceused Customer_Data

go

sp_spaceused Product_Info

go

Этот сценарий вызывает несколько системных хранимых процедур, собирающих разнообразную информацию о базе данных MyDB и ее файлах, группах файлов и таблицах (Customer_Data и Product_Info).

Предположим, что этот сценарий был сохранен в файле MyDB_info.sql. Тогда, чтобы запустить его из командной строки, вы можете воспользоваться опциями  -i и -o утилиты OSQL.

Опция  -i вызывает запуск сценария, находящегося во входном файле ( input ), имя которого указано после опции.

Опция  -o задает выходной файл ( output ), имя которого указано после опции, в него будут помещены результаты. Пусть выходной файл у нас будет иметь имя MyDB_info.out. Давайте также применим опцию -e, тогда операторы T-SQL из входного файла будут отображаться (echo) также и в выходном файле, что облегчит понимание выходного файла.

Например, чтобы исполнить наш сценарий, будучи системным администратором, надо дать следующую команду в командной строке:

osql –U sa –P –i MyDB_info.sql –o MyDB_info.out –e

Есть и другой способ запуска сценариев, при котором вам не понадобится каждый раз набирать с клавиатуры команду osql -u ....Надо создать .cmd-файл и поместить в него эту команду. Так, можно назвать этот файл MyDB_info.cmd и поместить в него вышеприведенную команду osql -u .... Теперь вы можете не только запустить команду MYDB_INFO из командной строки, но и дважды щелкнуть мышью на имени файла MyDB_info.cmd в Проводнике Microsoft Windows.

Сценарии можно запускать и в Query Analyzer. Чтобы запустить наш сценарий MyDB_info.sql, откройте этот файл, выбрав в Query Analyzer команду Open в меню File, после этого в верхней панели появится код сценария. Нажмите на кнопку Execute Query или нажмите клавиши Ctrl+E, и операторы сценария исполнятся. Вывод от операторов сценария будет выдаваться в соответствии с порядком исполнения операторов (рис. 19). Обратите внимание, что на рис. 19 две верхние таблицы результатов выданы хранимой процедурой sp_helpdb.

Рис. 19 Результаты исполнения сценария Query Analyzer

Query Analyzer

Query Analyzer применяется для исполнения операторов или сценариев T-SQL из графического пользовательского интерфейса и для получения результатов в форматированном виде. Query Analyzer обладает также некоторыми средствами для анализа индексов запросов. Некоторые люди предпочитают применять Query Analyzer, а не запускать операторы в окне "приглашения MS-DOS". Для работы с Query Analyzer выполните следующие действия:

  1. Запустите Query Analyzer каким-либо из следующих трех способов.

    • введите isqlw в командной строке;

    • откройте Enterprise Manager и выберите SQL Query Analyzer в меню Tools;

    • в меню кнопки Start наведите указатель мыши сначала на Programs, затем на Microsoft SQL Server, а затем выберите Query Analyzer.

Если вы не соединены с сервером, то появится диалоговое окно Connect to SQL Server (Соединиться с SQL Server) (рис. 15).

Рис. 15. Диалоговое окно Connect to SQL Server

  1. В ниспадающем списке SQL Server выберите сервер, с которым вы хотите соединяться. Точка, стоящая в этом поле, означает соединение с локальным сервером. Введите информацию для входа в систему и, если вы желаете, чтобы в случаях, когда SQL Server не запущен, он запускался бы автоматически, установите флажок Start SQL Server if it is stopped. Затем нажмите на экранную кнопку OK. Появится стартовое окно Query Analyzer (рис. 16).

Рис. 16 SQL Query Analyzer

  1. В окне запросов введите с клавиатуры любой оператор T-SQL или вызов хранимой процедуры (рис. 17). Заметьте, что окно запросов на приведенном рисунке развернуто и занимает все окно Query Analyzer.

Рис. 17. Вызов хранимой процедуры в окне запросов

  1. Чтобы выполнить введенный оператор, нажмите на кнопку Execute Query (Исполнить запрос), находящуюся на панели инструментов и выглядящую как зеленый треугольник, указывающий острием вправо, либо нажмите Ctrl+E*. Результаты исполнения запроса появятся в панели результатов (рис. 18).

Рис. 18. Query Analyzer показывает результаты исполнения запроса

  1. Если нужно, чтобы Query Analyzer загрузил и исполнил созданный вами ранее T-SQL-сценарий, то нажмите на кнопку Load SQL Script в панели инструментов, выглядящую как желтая папка, или выберите команду Open в меню File, а затем найдите и укажите нужный файл со сценарием. Весь сценарий появится в верхней панели окна запросов. Для запуска сценария нажмите на кнопку Execute Query.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]