![]() |
|
Программирование >> Реализация баз данных
214 Управление и манипулирование Глава 7 Data Source wners.mdh; User ID - Admin; Password-) ,..Contacts Здесь роль компонента мтупа OLE DB играем источника дан- ных - файл C:\StoreOwners.mdb, идентификатора пользователя - admin, а пароль не используется. Упражнение 2. Применение распределенных . , : запросов для доступа к внешним данным В этом упражнении еделите связанный сервер, а затем подключитесь к внешнему источнику данных с помощью операторов SELECT. Чтобы выполнить это упражнение, необходимо зарегистрироваться в качестве администратора на компьютере под управлением Windows 2000 Server и скопировать файл Testl.mdb из папки с прилагаемого компакт-диска в корневой каталог диска С: на компьютере под управлением Windows 2000. f 1рим(НЭНИе Выбор папки для копируемых файлов не ограничен корнев1м каталогом или дисков С:. Разрешается выбрать другой каталог или диск для хранения файла при условии, что он будет доступен связанному серверу и операторам ► Определение нного сервера 1. Откройте Enterprise Manager и затем - вкладку Security для локальной базы данных. 2. Щелкните правой кнопкой узел Linked Servers, а затем - New Linked Server. Появляется диалоговое окно Linked Server Properties - New Linked Server. 3. Выберите переключатель Other Dita Source. Несколько опций, расположенных в нижней части диалогового окн тану] активными. 4. В поле Linked Server наберите TESTSERVER. 5. Выберите Microsoft Jet 4.0 ОЕЕ DB Provider из раскрываю1пегося списка Provider Name. 6. В поле Data Source наберите C:\Testl ,mdb. 7. Щелкните ОК. В дереве консоли появляется связанный сервер Test SeTVer, В1полнение запроса к внешнему источнику данных щью функции OPENQUERY 1. Откройте Query Analyzer и подключитесь к локальному серверу. 2. На панели Editor в окне Query введите следующий код Transact-SQE: SELECT FROM OPENQUERY (Test Server, ЗВЬЕСТ FlrstNami, LastName FROM Testtablel) В этом операторе функция OPENQUERY связанный сервер (Test Server) и определяет оператор SELECT, который возвращает значения столбцов First- Name и EastName из таблицы TeslTable L. 3. Исполните оператор Transact-SQL. На вкладке Grids панели Results выводится результирующий набор. ► В1полнение запроса исгочиику данн1х шью оператора Transact-SQL 1. На панели Editor в окне Query введите следующий код Transact-SQL: SELECT FirstName, LastName FROM Test Server.,.TestTable1 В этом операторе связанный сервер определяется в составе имени. Обратите внимание, что в качестве заполнителей для двух частей используется троеточие (...). Этот оператор возвращает тот же результат, что и оператор из предыдущей процедуры. 2. Исполните оператор Transact-SQL. На вкладке Grids панели Results выводится результирующий набор. ► Вгполнение запроса к внешнему источнику ных щью функции OPENROWSET L На панели Editor в окне Query введите следующий код Transact-SQL: SELECT FirstName, L.-.dtNaiiib FROM OPENROWSET (Microsoft, jet.oledb.4.0, C:\Test1-fndb ; adnln; , TestTablel) В этом операторе функция OPENROWSET используется для извлечения из таблицы TestTablel значений столбцов FirstName и LastName. Здесь компонентом доступа OLE DB является Microsofl.jel.oledb.4.0. источником данных - файл C:\Testl.mdb, идемти-фикатором пользователя - admin, пароль отсутствует. 2. Исполните оператор Transact-SQL. На Grids панели Results выводится результирующий набор. Резюме Распределенные запросы позволяют получать доступ к данным, хранимым на нескольких различных экземплярах SQL Server и к гетерогенным которые хранятся в различ- ных реляционных и нереляционных источниках данных. Распределенные запросы способны обращаться к данным из внешних источников с помощью OLE DB. SQL Server 2000 поддерживает два метода для ссылки на гетерогенные источники данных OLE DB из операторов Transact-SQL: имя связанного сервера и истинное имя компьютера. С имени связанного сервера в операторах Transact-SQL удается идентифицировать внешние источники данных. После того как связанный сервер определен, его имя разрешается использовать как имя сервера в имени при ссылке на таблицу или представление или как входной параметр функции Кроме того, для редко исполняемых запросов к источникам данных OLE DB, для которых не определено имя связанного сервера, можно использовать истинные имена компьютеров. В SQL Server 2000 функции и предоставляют сведения о соединении для получения доступа к источникам данных OLE DB. 21 б Управление и маийпуянрчванне энными Гл1ава 7 Замятие 3. Извлечение данных с помощью курсоров Курсор - это сущность, соответствие с результирующим набором и на одну из его строк. После позиционирования курсора на некоторой строке над этой строкой или над который начинается с этой позиции, можно выполнять различные действия. В этом занятии мы познакомим вас с курсорами SQL Server и с тремя типами их реализации. Вы также узнаете, каким образом выбрать влечь) строку, на которой установлен курсор, и как задать поведение курсора. Кроме этого, мы расскажем о блокировке курсора. Изучив материал этого занятия, вы сможете: описать три типа реализации курсоров: серверные курсоры Transact-SQL, серверные курсоры API mTCKve курсоры; объявить, открыть и закрыть чурсо]:. с помощью Transact-SQL; извлечь строку из курсора с помощью Transact-SQL. Продолжительность занятия - около 30 минут. Основные сведения о курсорах В реляционных базах данных операции выполняются над наборами строк. Оператор SELECT набор, который состоит из всех строк, соответствующих в конструкции WHERE условию. Полный набор строк, который возвращает оператор, на-результирующим набором Приложения, особенно не всегда могут эффективно работать с результирующим набором как с единым целым. этих приложений необходим механизм, позволяющий им работать с небольшими блоками строк. Такой механизм реализован в виде курсоров. Курсоры расширяют возможности обработки результатов, обеспечивая поддержку следующих функций: * позиционирование на строках результирующего набора; * извлечение одной строки или блока строк от текущей позиции курсора в результирующем наборе; * поддержку модификации данных в строке, на которой в текущий момент позиционирован курсор в наборе; поддержку уровней видимости для изменений, которые вносят другие пользо- в данные результирующего набора; предоставление доступа к данным результирующего набора операторам Transact-SQL в составе сценариев, хранимых процедур и триггеров. SQL Server поддерживает три курсоров: серверные курсоры Transact-SQL, серверные курсоры API и клиентские Поскольку первые два вида курсоров реализованы на сервере, их в совокупности серверными курсорами. Не следует смешивать зона и ие курсоров различных типов. При исполнении операторов DECLARE CURSOR и из приложения сначала необходимо установить значения по умолчанию для атрибутов курсора APL Если установить для атрибутов курсора значения, отличные от заданных по умолчанию, а затем исполнить операторы DECLARE CURSOR и то SQL Server установит соответствие курсора API и курсо- ра Transact-SQL. В частности, не следует задавать атрибутов которые
|
© 2006 - 2025 pmbk.ru. Генерация страницы: 0.003
При копировании материалов приветствуются ссылки. |