|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
9.3.3. Объект SQLDMO.SQLServer2Объекты SQLDMO.Server и SQLDMO.Server2, подключение к серверу, свойства LoginSecure и Name, метод Connect(), коллекции Databases и Logins Как и в объектной модели SMO, главный объект SQL-DMO — объект, представляющий сервер SQL Server. В SQL-DMO он называется SQLDMO.SQLServer2. Чаще всего логика скрипта SQL-DMO выглядит так: создаем объект SQLDMO.SQLServer2, используем его для подключения к серверу, затем через объект SQLDMO.SQLServer2 получаем доступ к подчиненным объектам (базам данных, логинам, заданиям и т. п.) и выполняем с ними определенные операции, в конце снова через SQLDMO.SQLServer2 разрываем соединение. Например, для получения информации о размере свободного пространства во всех базах данных можно использовать скрипт вида: Set oServer = CreateObject("SQLDMO.SQLServer2") 'Используем аутентификацию Windows oServer.LoginSecure = True oServer.Connect "Server1\Instance2" For Each oDatabase In oServer.Databases WScript.Echo oDatabase.Name & " " & oDatabase.SpaceAvailableInMB Next oServer.Disconnect Set oServer = Nothing Свойств и методов у объекта SQLDMO.SQLServer2 очень много, поэтому далее представлены только самые важные из них: q CodePage — кодировка, установленная для всего SQL Server; q LoginSecure — если для этого свойства используется значение False (по умолчанию), то подключение выполняется от имени логина SQL Server, и в методе Connect() нужно дополнительно указывать имя логина и его пароль. Если настроить для этого свойства значение True, то будет использоваться аутентификация Windows. Обратите внимание, что в отличие от SMO отдельного объекта соединения в SQL-DMO не предусмотрено. Другое важное отличие — то, что по умолчанию используется аутентификация SQL Server, а не Windows; q Name — имя SQL Server. В этом свойстве может быть указан и псевдоним; q NetName — реальное сетевое имя SQL Server (обычно применяется для проверок тогда, когда при подключении к серверу использовался псевдоним); q RegionalSettings — региональные установки, настроенные для драйвера ODBC. Эти настройки можно изменять в ходе выполнения скрипта; q SaLogin — это свойство позволяет проверить, обладаете ли вы правами системного администратора на сервере. Обычно используется для проверки перед выполнением какой-либо операции; q Status — текущее состояние SQL Server. Для этого свойства предусмотрено восемь значений: · 0 — состояние сервера определить не удалось; · 1 — нормальное рабочее состояние; · 2 — работа службы приостановлена; · 3 — служба SQL Server остановлена; · 4 — в данный момент происходит переход из состояния "остановлено" в состояние "запущено"; · 5 — происходит обратный переход: из "запущено" в "остановлено"; · 6 — в данный момент сервер запускается после приостановки работы; · 7 — обратный переход: работа сервера приостанавливается; q AddStartParameter() — этот метод позволяет добавить параметр запуска для SQL Server (например, для перевода в однопользовательский или минимальный режим, для запуска с базой данных master на другом диске и т. п.); q Connect() и Disconnect() — эти методы позволяют соответственно подключиться или отключиться от сервера SQL Server; q ExecuteImmediate() — этот метод аналогичен методу ExecuteNonQuery() в SMO. Он позволяет запустить на выполнение команду или запрос на SQL Server, когда вас не интересует результат выполнения этой команды или запроса; q ExecuteWithResults() — этот метод позволяет выполнить команду Transact-SQL на сервере и получить возвращаемый ею табличный набор записей. Прием возвращаемых результатов производится при помощи объекта QueryResults; q ExecuteWithResultsAndMessages() — этот метод расширяет возможности метода ExecuteWithResults(). Кроме результатов выполнения запроса, он позволяет принять в строковую переменную сообщения SQL Server, которыми сопровождается выполнение запроса; q IsPackage() — этот метод проверяет редакцию SQL Server. Может возвращать 5 значений: · 0 — возникла ошибка, значение получить не удалось; · 1 — Desktop Edition; · 2 — Standard Edition; · 3 — Enterprise или Developer Edition; · 4 — Express Edition (бывшая MSDE); q Start(), Shutdown(), Pause(), Continue() — эти методы соответственно запускают, останавливают, переводят в режим паузы или продолжают работу SQL Server; q ReadErrorLog() — получает все содержимое журнала SQL Server в виде объекта QueryResult. Кроме того, при помощи свойств объекта SQLDMO.SQLServer можно получить доступ к набору объектов нижних уровней: q BackupDevices — эта коллекция предназначена для работы с логическими устройствами резервного копирования; q Configuration — это свойство позволяет настроить через скрипт все параметры сервера, доступные средствами хранимой процедуры sp_configure; q Databases — это свойство предоставляет доступ к базам данных и их многочисленным объектам; q FullTextService — работа из скрипта с полнотекстовыми каталогами; q IntegratedSecurity — при помощи этого свойства можно получить доступ к одноименному объекту, при помощи которого настраиваются параметры безопасности (в Management Studio они доступны на вкладке Security (Безопасность) свойств сервера); q JobServer — как и в SMO, этот объект предоставляет доступ к элементам автоматизации SQL Server Agent, таким как задания, предупреждения и операторы; q Languages — информация о языковых модулях, установленных с SQL Server; q LinkedServers — этот объект предназначен для работы с подключенными серверами (с объектами LinkedServer); q Logins — свойство для доступа к коллекции логинов SQL Server; q Registry — это свойство позволяет считать или изменять любые параметры реестра, относящиеся к данному экземпляру SQL Server; q Replication — это свойство возвращает объект Replication, который можно использовать для настройки репликации средствами SQL-DMO; q ServerRoles — этот объект позволяет работать со встроенными серверными ролями.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Получить учебные материалы по этому курсу |
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||