Программирование >>  Реализация баз данных 

1 ... 70 71 72 [ 73 ] 74 75 76 ... 162


все сведения, необходимые компоненту доступа OLE DB для поиска источника данных;

имя объекта, который источник данных OLE DB может представить в виде набора строк, или запрос, в ответ на который компонент доступа OLE DB предоставит набор строк (объекты, которые разрешается представлять в виде наборов строк, называются удаленными таблицами; запросы, генерирующие наборы строк, называются транзитными запросами);

идентификатор для доступа к источнику данных OLE DB (не обязательно).

SQL Server 2000 поддерживает два метода для ссылок на гетерогенные источники данных OLE DB в операторах Transact-SQL: имя связанного сервера и истинное имя компьютера.

Использование имен связанных серверов в распределенных запросах

имен связанных серверов в операторе Transact-SQL определяют ни*г ис-

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

ставление) или как входной параметр функции OPENQUERY.

Связанные серверы

Связанный - это виртуальный сервер, определенный в SQL Server. В определение связанного сервера входит вся необходимая для доступа к источнику данных OLE DB. Настраивают связанный сервер с помошью Enterprise Manager или системной хранимой процедуры Определение связанного сервера также содержит

всю информацию, необходимую для поиска источника данных OLE DB.

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

В определении связанного сервера задан компонент доступа OLE DB, например Microsoft OLE DB Provider for SQL Server и источник данных OLE DB, например экземпляр SQL Server. Компонент доступа OLE DB - это динамически подключаемая ка которая управляет определенным источником данных и взаимодействует с ним.

Источник данных OLE DB определяет некоторую базу данных, доступную через OLE DB. Хотя посредством определений связанных серверов обычно запрашивают данные из таких источников, как базы данных, компоненты OLE DB для широкого спектра файлов в различных форматах, в том числе текстовых файлов, данных электронных таблиц и поиска.

Четырехкомпонентные имена

После того как сервер определен, для ссылки на объекты с данными этого сервера в операторах Transact-SQL допустимо использовать состоящие из четырех частей (четыредком-понентныс I имена в таком виде: рвера.катаяог.схема. им кта. Составные части имени описаны в следующей таблице.



Управление и мзнипулирован еданными Глава?

Название части Описание

Имя свнзанного сервера Связанный сервер, ссылаюисийеп на источник данных OLE DB каталог Каталог источника данных OLE DB, в котором содержится

объект

схема Схема шюге. в котором содержится объект

имя объекта Объект с т\ь\т\ в схеме

По имени связанного сервера SQL Server иаирует компонент доступа OLE DB точннк данных. Параметр Mo/Mt схема и бьекта передаются компоненту доступа OLE DB для я;1ент;1фи1сации определенного объекта с данными. Когда связанный сервер ссылается на экземпляр SQL Server, каталог ссылается на базу данных, а схема -

на идентификатор владельца.

Следующи11 оператор SELECT В01вращаеч все строки из таблицы Contacts: SELECT *

FROM StoreOwners. . .Contacts

Здесь с помощью имени связанного сервера StoreOwners атор SELECT идентифицирует источник данных OLE DB. Обратите внимание: между именем связанного сервера и объектом проставлены три точк ws...Contacts), которые заменяют имя каталога и схемы.

f .

Функция OPENQUERY

Функция OPENQUERY используется для исполнения определенных транзитных запросов на данном связанном сервере, который является источником данных OLE DB. Можно применять функцию OPENQUERY в конструкции FROM запроса так же, как если бы она была именем таблицы. Кроме того, пг функцию OPENQUERY разрешается ссылаться как на целевую таблицу в операторах INSERT, UPDATE или DELETE (в зависимости от возможностей компонента доступа OLE DB). Хотя запрос способен возвращать несколько результирующих наборов, функция CPENQUERY возвращает лишь первый из них.

Следующий оператор SELECT возвращает значения столбца LastName из таблицы Contacts:

SELECT *

FROM OPENQUERY (StoreOwners, 8Е1Г:СТ LastName FROM Contacts)

Оператор SELECT извлекает с помощью функции OPENQUERY данные из внешнего

источника. Одним из параметров OPENQUERY является имя связанного сервера.

Использование оленных запросах истинных имен компьютеров

С помощью истинных имен компьютеров можно выполнять редко исполняемые запросы данных из источников OLE для которых не определено имя связанного сервера. В

SQL Server 2000 функции OPENROWSET и OPENDATASOURCE предоставляют сведения о соединении для доступа к данн из источников DB.

Функции OPENROWSET и OPENDATASOURCE следует использовать только для ссылки на те источники OLE DB, к которым обращаются редко. Для тех источников данных, к которые /аются часто, следует определить связанный сервер. Ни OPENDATASOURCE, ни OPENROWSET не СПСССбен предоставить полный набор функций, который дает определение связанного сервера, например управление безопасностью или запрос



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

Хотя OPENROWSET и OPFNOATASOURfF выглядят как функции и называются

именно так, строго говоря, функциями они не являются. OPENROWSET и OPENDATA-

SOURCE - это макросы, которые не поддерживают передачу в качестве аргументов переменных Transact-SQL.

Функция OPENROWSET

Функцию OPENROWSET разрешается использовать с любым компонентом доступа OLE DB, который возвращает набор строк, в произвольном месте оператора где

допускается ссылка на таблицу ил шление. Чтобы вызвать кцию OPENROWSET, необходима следующая информация;

всння. требуемые для подключения к источнику данных OLE DB;

имя объекта или запрос, который генерирует набор строк.

В следующем операторе SELECT посредством функции OPENROWSET выполняется

подключение к файлу базы данных Microsoft Access и получение доступа к данным таблицы Contacts:

SELECT

FROM ;)PENROWSET

( Microsoft.jet.oledb.4.0, ,

C:\StO-pftvnn--, Tidb; adiinin: , Contacts)

Здесь компонент доступа - источник данных - файл

идентификатор пользователя - admin, а пароль не используется.

Функция OPENDATASOURCE

Функции ASOURCE предоставляет сведения о соединении в составе четырех-компонентного имени объекта. Эта функция поддерживает только те компоненты доступа OLE DB, которые способны несколько наборов строк и используют нотацию каталог.схема.объекп: Функцию OPENDATASOURCE можно применять в операторе Transact-SQL вместо имени связанного сервера. Чтобы вызвать функцию OPENDATA-

SOURCE, необходима следующая информация:

имя, зарегистрированное ка > : ID, компонента доступа OLE DB, который используется для доступа к источнику данных;

строка соединения, где заданы различные свойства соединения, которые необходимо передать компоненту доступа OLE DB.

Примечание Синтаксис строки соединения представляет собой последовательность пар ключевое слово - значение . Базовый синтаксис определен в Microsoft Data Access Software Development Kit, а конкретные пары ключевое м - значение , поддерживаемые различными компонентами доступа, описаны в их документации.

В следующем операторе SELECT функция используется для под-

ключения к файлу базы данных Microsoft Access и доступа к данным таблицы Contacts:

SELECT

FROM OPENDATASOURCE

( Ilibi и:01 Jc- .uledb.4.0,



1 ... 70 71 72 [ 73 ] 74 75 76 ... 162

© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика