Freigeben über


Zugreifen auf eine Visual FoxPro-Datenquelle

Sie können eine Verbindungszeichenfolge verwenden, um auf eine Visual FoxPro-Datenquelle zuzugreifen. Eine gültige Verbindungszeichenfolge gibt den OLE DB-Provider und die Datenquelle an.

Um z. B. auf die Datenqelle "TasTrade" zuzugreifen, können Sie eine der folgenden Zeichenfolgen verwenden.

So greifen Sie auf eine Visual FoxPro-Datenquelle in Visual Basic zu

  • Geben Sie den Visual FoxPro OLE DB-Provider und die Datenquelle wie im folgenden Codebeispiel an:

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

So greifen Sie auf eine Visual FoxPro-Datenquelle in Visual C++ zu

  • Stellen Sie die Datenbankeigenschaften ein, geben Sie das Array DBSetProp, das Array DBProp, den IDBProperties-Zeiger und dann den Visual FoxPro OLE DB-Provider an:

    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();
    

So greifen Sie auf eine Visual FoxPro-Datenquelle in Visual C# zu

  • Verwenden Sie den folgenden Code, um den Visual FoxPro OLE DB-Provider anzugeben und auf die Datenquelle zuzugreifen:

    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();
    

So greifen Sie auf eine Visual FoxPro-Datenquelle in ASP zu

  1. Erstellen Sie eine ASP-Seite mit den entsprechenden HTML-Tags.

  2. Fügen Sie Visual Basic Scripting Language (VBScript)-Code unter Verwendung von ADO hinzu, um eine Verbindung zu erstellen, Befehle auszuführen etc.:

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

So greifen Sie auf eine Visual FoxPro-Datenquelle in Jscript zu

// 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();
   }

Sie können die folgenden Attributschlüsselwörter und -werte in einer Verbindungszeichenfolge verwenden:

  • Provider
    VFPOLEDB
  • Data Source=cPath
    Gibt den Pfad zur Visual FoxPro-Datenbank oder dem Ordner mit freien Tabellen an. Zum Beispiel: d:\vfp7\samples\data\testdata.dbc
  • Mode=cMode
    Gibt eine der folgenden Möglichkeiten an: Read, ReadWrite, Share Deny None (Standard), Share Deny Read, Share Deny Write, Share Exclusive (einschließlich der zwei vorherigen Modi).

Siehe auch

OLE DB-Provider für Visual FoxPro | Verwenden des Visual FoxPro OLE DB-Providers zum Zugriff auf Daten | Zugreifen auf eine Visual FoxPro-Datenquelle über <Office-Komponenten> | Sprachreferenz für die OLE DB-Entwicklung | Visual FoxPro als Datenquelle