Programação ADO VBScript

Como criar um projeto ADO

O Microsoft Visual Basic Scripting Edition não dá suporte a bibliotecas de tipos, ou seja, você não precisa fazer referência ao ADO em seu projeto. Consequentemente, não há suporte para recursos associados, como a conclusão da linha de comando. Além disso, por padrão, as constantes enumeradas do ADO não são definidas no VBScript.

No entanto, o ADO fornece dois arquivos de inclusão que contêm as seguintes definições a serem usadas com VBScript:

  • Para scripts do lado do servidor, use Adovbs.inc, que é instalado na pasta c:\Arquivos de Programas\Arquivos Comuns\Sistema\ado\ por padrão.

  • Para scripts do lado do cliente, use Adovbs.inc, que é instalado na pasta c:\Arquivos de Programas\Arquivos Comuns\Sistema\msdac\ por padrão.

É possível copiar e colar definições constantes desses arquivos nas páginas ASP ou, se estiver fazendo scripts do lado do servidor, copiar o arquivo Adovbs.inc em uma pasta no site e fazer referência a ele na página ASP da seguinte forma:

<!--#include File="adovbs.inc"-->  

Criando objetos ADO no VBScript

Não é possível usar a instrução Dim para atribuir objetos a um tipo específico no VBScript. Além disso, o VBScript não dá suporte à sintaxe New usada com a instrução Dim no Visual Basic for Applications. Em vez disso, você deve usar a chamada de função CreateObject:

Dim Rs1  
Set Rs1 = Server.CreateObject( "ADODB.Recordset" )  

Exemplos de VBScript

O código a seguir é um exemplo genérico de programação VBScript do lado do servidor em um arquivo ASP (Página do Active Server):

<%  @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>  

Exemplos de VBScript mais específicos estão incluídos na documentação do ADO. Para saber mais, confira Exemplos de Código da ADO no Microsoft Visual Basic Scripting Edition.

Diferenças entre o VBScript e o Visual Basic

O uso do ADO com VBScript é semelhante ao uso do ADO com o Visual Basic de várias maneiras, incluindo como a sintaxe é usada. No entanto, existem algumas diferenças relevantes:

  • O VBScript dá suporte apenas ao tipo de dados Variant, que pode conter diferentes tipos de dados. Você pode armazenar os dados necessários em um tipo de dados Variant e os dados funcionarão adequadamente devido à conversão executada pelo VBScript. Ele reconhece o tipo exigido pelo ADO e converte o valor na Variant de acordo.

  • Você não pode usar on error goto <label> no VBScript.

  • O VBScript dá suporte a algumas das funções internas do Visual Basic, como Msgbox, Datee IsNumeric. No entanto, como o VBScript é um subconjunto do Visual Basic, nem todas as funções internas têm suporte. Por exemplo, o VBScript não dá suporte à função Format e às funções de E/S do arquivo.