Compartir a través de


Acceso a un origen de datos de Visual FoxPro

Puede utilizar una cadena de conexión para tener acceso a un origen de datos de Visual FoxPro. Una cadena de conexión válida especifica el proveedor de OLE DB y el origen de datos.

Por ejemplo, para conectarse al origen de datos TasTrade podría utilizar cualquiera de las siguientes cadenas.

Para tener acceso a un origen de datos de Visual FoxPro en Visual Basic

  • Especifique el proveedor de OLE DB de Visual FoxPro y el origen de datos como muestra el siguiente código:

    oConnection.Open("Provider=vfpoledb.1;Data Source=.\TasTrade.dbc")
    

Para tener acceso a un origen de datos de Visual FoxPro en Visual C++

  • Establezca las propiedades de la base de datos, especificando las matrices DBSetProp y DBProp, el puntero IDBProperties y, a continuación, el código que especifica el proveedor de OLE DB de Visual FoxPro:

    HRESULT hr;
    CLSID clsid;     
    //set the DBProp array 
    
    DBPROP iProp[1];
    DBPROPSET rgIP;
    IDBProperties* pIDBProperties = NULL;
    IDBInitialize *pIDBInitialize = NULL;
    
    VariantInit(&iProp[0].vValue);
    iProp[0].dwOptions = DBPROPOPTIONS_OPTIONAL;      // REQUIRED;
    iProp[0].colid = DB_NULLID;
    //set the location of the datasource 
    
    iProp[0].dwPropertyID = DBPROP_INIT_DATASOURCE;
    iProp[0].vValue.vt = VT_BSTR;
    iProp[0].vValue.bstrVal = L"c:\TasTrade.dbc";   // the data source
    //set DBpropset to point to the DBPROP array 
    
    rgIP.guidPropertySet = DBPROPSET_DBINIT;
    rgIP.cProperties = 1;
    rgIP.rgProperties = iProp;
    
    ::CoInitialize(NULL);
    
    hr = CLSIDFromProgID(L"vfpoledb.1",&clsid);   // the OLE DB Provider
    hr = CoCreateInstance(clsid,
           NULL,
           CLSCTX_INPROC_SERVER,
           IID_IDBInitialize,
           (void**)&pIDBInitialize);
    
    // to initialize 
    hr = piDBInitialize->QueryInterface(_uuidof(IDBProperties), (void**)&pIDBProperties);
    hr = pIDBProperties->SetProperties(1 , &rgIP) ;
    hr = pIDBProperties->Release();
    hr = pIDBInitialize->Initialize();
    

Para tener acceso a un origen de datos de Visual FoxPro en Visual C#

  • Utilice el siguiente código para especificar el proveedor de OLE DB de Visual FoxPro y para tener acceso al origen de datos:

    OleDbConnection oleDbConnection1 = new   OleDbConnection("Provider=VFPOLEDB.1;"+
         "Data Source=C:\\TasTrade.DBC;");
    oleDbConnection1.Open();
    
    
    OleDbConnection oleDbConnection1 = new OleDbConnection();
    oleDbConnection1.ConnectionString = "Provider=VFPOLEDB.1;" + 
          "Data Source=C:\\TasTrade.DBC;";
    oleDbConnection1.Open();
    

Para tener acceso a un origen de datos de Visual FoxPro en ASP

  1. Cree una página ASP con las etiquetas HTML apropiadas.

  2. Agregue el código del Lenguaje de secuencias de comandos de Visual Basic (VBScript) para establecer una conexión, ejecute los comandos, etc. utilizando ADO:

    <%
        Set conn = Server.CreateObject("ADODB.Connection")
        conn.mode = 16
        conn.ConnectionString="Provider=VFPOLEDB.1;Data
            Source=d:\vfp7\samples\data\testdata.dbc"
        conn.Open
       'sql = "select * from customer"
        Set rsArrival = conn.Execute(sql)
    %>
    

Para tener acceso a un origen de datos de Visual FoxPro en JScript

// VFP OLE DB Provider Jscript Sample
var vbOKCancel = 0;
var vbInformation = 64;
var vbCancel = 2;
var L_Welcome_MsgBox_Message_Text = "This script demonstrates how to access VFP OLE DB Provider using the Windows Scripting Host.";
var L_Welcome_MsgBox_Title_Text   = "VFP OLE DB Provider JScript Sample";
var sBuffer = "";

var sConnString = "Provider=vfpoledb.1;Data Source=d:\\vfp7\\Samples\\data\\testdata.dbc";
var oConn = new ActiveXObject("ADODB.Connection");
var oRS    = new ActiveXObject("ADODB.Recordset");

oConn.Open(sConnString);
oRS.Open("select * from customer where cust_id='CACTU'",oConn,3,3);

// Get customer.company
sBuffer = oRS.Fields('Company').value;

var WSHShell = WScript.CreateObject("WScript.Shell");
var intDoIt;
intDoIt =  WSHShell.Popup(sBuffer,
   0,
   L_Welcome_MsgBox_Title_Text,
   vbOKCancel );
   if (intDoIt == vbOKCancel) {
      oRS.Close();
      oConn.Close();
      WScript.Quit();
   }

Puede incluir las siguientes palabras clave y valores de atributos en una cadena de conexión:

  • Provider
    VFPOLEDB
  • Data Source=cPath
    Especifica la ruta a la base de datos de Visual FoxPro o a la carpeta que contiene las tablas libres. Por ejemplo, d:\vfp7\samples\data\testdata.dbc
  • Mode=cMode
    Especifica uno de los siguientes: Read, ReadWrite, Share Deny None (predeterminado), Share Deny Read, Share Deny Write, Share Exclusive (incluidos los dos modos anteriores).

Vea también

Proveedor OLE DB para Visual FoxPro | Uso del proveedor OLE DB de Visual FoxPro para obtener acceso a datos | Acceso a un origen de datos de Visual FoxPro desde componentes de Office | Referencia del lenguaje para desarrollo OLE DB | Visual FoxPro como origen de datos