Программирование объектов ADO с использованием VBScript
Создание проекта ADO
Microsoft Visual Basic, Scripting Edition не поддерживает библиотеки типов, поэтому вам не нужно ссылаться на ADO в проекте. Следовательно, связанные функции, такие как завершение командной строки, не поддерживаются. Кроме того, по умолчанию константы перечисления ADO не определены в VBScript.
Однако ADO предоставляет два включаемого файла, содержащие следующие определения для использования с VBScript:
Для создания сценариев на стороне сервера используйте Adovbs.inc, который по умолчанию устанавливается в папку c:\Program Files\Common Files\System\ado\.
Для создания клиентских сценариев используйте Adcvbs.inc, который по умолчанию устанавливается в папку c:\Program Files\Common Files\System\msdac\.
Вы можете копировать и вставлять определения констант из этих файлов на asp-страницы или, если вы выполняете скрипты на стороне сервера, копировать файл Adovbs.inc в папку на веб-сайте и ссылаться на него со страницы ASP следующим образом:
<!--#include File="adovbs.inc"-->
Создание объектов ADO в VBScript
Оператор Dim нельзя использовать для назначения объектов определенному типу в VBScript. Кроме того, VBScript не поддерживает синтаксис New, используемый с оператором Dim в Visual Basic для приложений. Вместо этого необходимо использовать вызов функции CreateObject :
Dim Rs1
Set Rs1 = Server.CreateObject( "ADODB.Recordset" )
Примеры VBScript
Следующий код является универсальным примером программирования на стороне сервера VBScript в asp-файле:
<% @LANGUAGE="VBSCRIPT" %>
<% Option Explicit %>
<!--#include File="adovbs.inc"-->
<HTML>
<BODY BGCOLOR="White" topmargin="10" leftmargin="10">
<!-- Your ASP Code goes here -->
<%
Dim Source
Dim Connect
Dim Rs1
Source = "SELECT * FROM Authors"
Connect = "Provider=sqloledb;Data Source=srv;" & _
"Initial Catalog=Pubs;Integrated Security=SSPI;"
Set Rs1 = Server.CreateObject( "ADODB.Recordset" )
Rs1.Open Source, Connect, adOpenForwardOnly
Response.Write("Success!")
%>
</BODY>
</HTML>
Более конкретные примеры VBScript включены в документацию по ADO. Дополнительные сведения см. в разделе Примеры кода ADO в Выпуске сценариев Microsoft Visual Basic.
Различия между VBScript и Visual Basic
Использование ADO с VBScript во многих отношениях похоже на использование ADO с Visual Basic, включая использование синтаксиса. Однако существуют некоторые существенные различия:
VBScript поддерживает только тип данных Variant, который может содержать различные типы данных. Вы можете хранить необходимые данные в типе данных Variant, и данные будут работать надлежащим образом из-за приведения, выполняемого VBScript. Он распознает тип, необходимый для ADO, и преобразует значение в Variant соответствующим образом.
Вы не можете использовать метку> goto <ошибки в VBScript.
VBScript поддерживает некоторые встроенные функции Visual Basic, такие как Msgbox, Date и IsNumeric. Однако, поскольку VBScript является подмножеством Visual Basic, поддерживаются не все встроенные функции. Например, VBScript не поддерживает функцию Format и функции файлового ввода-вывода.