Compartir a través de


Programación de ADO con VBScript

Se aplica a: Access 2013, Office 2013

Crear un proyecto de ADO

Microsoft Visual Basic Scripting Edition no admite bibliotecas de tipos, de modo que no es necesario hacer referencia a ADO en su proyecto. En consecuencia, no se admite ninguna característica asociada, tal como la finalización de línea de comando. Además, de forma predeterminada, las constantes enumeradas de ADO no se encuentran definidas en VBScript.

Sin embargo, ADO proporciona dos archivos de inclusión que contienen las siguientes definiciones utilizadas con VBScript:

  • Para escribir secuencias de comandos de servidor, utilice Adovbs.inc, el cual se instala de manera predeterminada en la carpeta c:\Archivos de programa\Archivos comunes\System\ado\.

  • Para escribir secuencias de comandos de cliente, utilice Adcvbs.inc, el cual se instala de manera predeterminada en la carpeta c:\Archivos de programa\Archivos comunes\System\msdac\.

Puede copiar y pegar definiciones de constantes de estos archivos en las páginas ASP o, si está realizando scripting del lado servidor, copie el archivo Adovbs.inc en una carpeta del sitio web y haga referencia a él desde la página ASP de la siguiente manera:

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

Crear objetos de ADO en VBScript

No es posible utilizar la instrucción Dim para asignar objetos a un tipo específico en VBScript. Además, VBScript no admite la sintaxis New utilizada con la instrucción Dim en Visual Basic para Aplicaciones (VBA). Deberá utilizar la llamada a la función CreateObject:

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

Ejemplos de VBScript

El código siguiente es un ejemplo genérico de programación de servidor con VBScript en un archivo 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> 

En la documentación de ADO, se incluyen ejemplos más específicos de VBScript. Para obtener más información, vea Ejemplos de código de ADO en Microsoft Visual Basic Scripting Edition.

Diferencias entre VBScript y Visual Basic

El uso de ADO con VBScript es similar al uso con Visual Basic, incluido el uso de la sintaxis. Sin embargo, existen algunas diferencias significativas:

  • VBScript sólo admite el tipo de datos Variant, el cual puede contener diferentes tipos de datos. Es posible almacenar los datos que se necesitan en un tipo de datos Variant, y aquéllos funcionarán correctamente debido a la conversión realizada por VBScript. Éste reconoce el tipo requerido por ADO y convierte el valor correspondiente del Variant en consecuencia.

  • No se puede usar on error goto <label> en VBScript.

  • VBScript admite algunas de las funciones incorporadas de Visual Basic, tales como Msgbox, Date y IsNumeric. Sin embargo, puesto que VBScript es un subconjunto de Visual Basic, no todas las funciones integradas están admitidas. Por ejemplo, VBScript no admite la función Format ni las funciones de E/S de archivo.