Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы SQL-Курс лекций ИНТУИТ.docx
Скачиваний:
180
Добавлен:
16.09.2019
Размер:
554.17 Кб
Скачать
  • Append ( Delete ) - добавление (удаление) параметра для указанной коллекции ;

  • Item - извлечение определенного объекта Parameter.

На некоторый объект Parameter в коллекции Parameters можно ссылаться, используя его порядковый номер или значение, присвоенное свойству Name этого объекта.

Объект Recordset представляет набор записей, полученный в результате выполнения запроса в базе данных. При создании объекта Recordset указатель текущей записи устанавливается на его первую запись (если таковая имеется), а свойствам BOF и EOF присваивается значение FALSE. Если никаких записей нет, то свойству Recordcountприсваивается значение 0, а свойствам BOF и EOF - значение TRUE. Класс Recordset включает следующие методы:

  • MoveFirst, MoveLast, MoveNext, MovePrevious и Move - производят перемещение указателя текущей записи в предположении, что провайдер поддерживает выполнение соответствующей функции. В однонаправленных объектах Recordset поддерживается только метод MoveNext. При использовании указанных методов для перемещения по записям результирующего набора для обнаружения его начала и конца могут применяться свойства BOF и EOF объекта Recordset ;

  • AddNew, Update, Delete - осуществляют добавление новых записей, обновление и удаление имеющихся записей, связанных с открытым объектом;

  • Open ( Close ) - выполняют открытие (закрытие) курсора, представляющего результаты выполнения команды.

Коллекция Fields. Объект Recordset содержит коллекцию Fields, состоящую из объектов класса Field, каждый из которых соответствует столбцу данных объектаRecordset. Как и при работе с объектами Parameter, на отдельный объект Field в коллекции Fields можно ссылаться, используя его порядковый номер или имя.

Объект Connection

Рассмотрим возможность соединения с базой данных из языков сценариев.

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

Объект Connection позволяет устанавливать сеансы связи с источниками данных; он обеспечивает функционирование механизма для инициализации и установлениясоединения, выполнения запросов и использования транзакций.

Создание соединения с базой данных включает следующие шаги:

  • сначала вызывается метод CreateObject() объекта Server, создающий объектную переменную cn типа Connection. Объект Connection определен в библиотеке ADODB:

  • Dim cn

Set cn=Server.CreateObject("ADODB.Connection")

  • далее можно использовать метод Open объекта Connection для установки соединения c провайдером ODBC. Провайдер определяется посредством установки свойстваProvider. Если оно не определено, то по умолчанию будет использован провайдер MSDASQL - это сокращенное название драйвера OLE DB Microsoft для SQL Server:

cn.provider "MSDASQL"

  • затем вызывается метод Open() объекта Connection, открывающий соединение с заданным источником данных.

Сослаться на базу данных SQL Server из ASP -сценария возможно двумя способами:

  • путем создания источника данных ( DSN );

  • с помощью строки соединения (без применения DSN ).

В первом случае созданный заранее источник данных с именем mystud используется для соединения с базой данных следующим образом:

cn.open "mystud","user1","123"

Здесь для метода Open указывается DSN базы данных, имя пользователя и пароль.

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

"uid=user1;driver={SQL Server};server=its;

database=basa_user1"

Строка создает соединение с базой данных basa_user1 на MS SQL Server с именем its, используя драйвер для SQL Server и имя пользователя user1. Если нужен пароль, то необходимо добавить подстроку pwd=<пароль>:

"uid=user1;pwd=123;driver{SQL Server};

server=its;

database=basa_user1"

Такая строка подойдет для соединения с базой данных в тексте сценария вместо источника данных:

cn.open "uid=user1;driver={SQL Server};

server=its;

database=basa_user1"

или

cn.open "uid=user1; pwd=123;

driver={SQL Server};

server=its;database=basa_user1"

Опустив некоторые подробности работы с API-интерфейсом, приведем небольшой фрагмент сценария на языке VBScript для серверной стороны, выполняющий выборку и изменение информации в базе данных учебного примера.

Dim cn

Dim rst

Set cn=Server.CreateObject("ADODB.Connection")

Set rst=Server.CreateObject("ADODB.Recordset")

cn.open "uid=user1;pwd=123;

driver={SQL Server};

server=its;database=basa_user1"

rst.open "SELECT название, тип, цена

FROM товар", cn

do until rst.eof

response.write rst.fields(0)

response.write rst.fields(1)

response.write rst.fields(2) & "<br>"

rst.movenext

loop