OLE DB和ADO各位大哥,我常用如下方式连接数据库:
dim cn as new adodb.connection;
dim rs as new adodb.recordset;
cn.open "provider=.......";
rs.open "select * from ...",cn请问这种连接数据库的方式是算ole db,还是算ado呢?
如果这是ole db,那ADO方式是什么呢?一定要用了ADO控件才算ADO咯?
如果这是ADO,那ole db方式又是什么呢?能不能举点例子?现在倒底是ole db比较好呢?还是用ADO方式比较好呢?谢谢大家啦

解决方案 »

  1.   

    ADO是一种技术的name建议把MSDN的ADO所有介绍都看完
      

  2.   

    推荐ADO,功能强大,支持广泛!
    Ms以后的发展方向
      

  3.   

    你吧概念混淆了,ADO微软提供的访问数据库的对象库,而OLE DB,ODBC则是数据库的借口形式。
    连接是不是用OLE DB ,就看cn.Open "provi...."这个连接字符串里面的内容了,使用OLE DB和ODBC连接字符串的形式是不一样的,一般OLE DB的连接字符串里面包含有"Ole DB"之类的字样。
      

  4.   

    谢谢大家,那我如果想用ole db方式,连接DBF,DBC等VFP的数据库,我该如何写连接串呢?有什么简单的方法可以生成连接串呢?
      

  5.   

    学习方法之一
    插入Adodc控件(Microsoft ADO Data Control 6.0)
    用它的自定义向导分别用各种方法连接数据库,然后查看它的Connctionstring
      

  6.   

    希望你能有个全面的了解::ADO连接数据库字符串大全(VP,Excel,文本,Sybase,.NET等) 
    --------------------------------------------------------------------------------
    This page contains sample ADO connection strings for ODBC DSN / DSN-Less,
    OLE DB Providers, Remote Data Services (RDS), MS Remote, MS DataShape.Also included are ADO.NET connection strings for each .NET Managed Provider 
    (SQLClient, OLEDB, and ODBC).These sample connection strings are compiled 
    by Carl Prothman, a Microsoft Visual Basic MVP 
    Enjoy!
     
    Table of Contents
    ODBC DSN Connections DSN 
    File DSNODBC DSN-Less Connections  ODBC Driver for AS/400 
    ODBC Driver for Access 
    ODBC Driver for dBASE 
    ODBC Driver for Excel 
    ODBC Driver for MySQL 
    ODBC Driver for Oracle 
    ODBC Driver for Paradox 
    ODBC Driver for SQL Server 
    ODBC Driver for Sybase 
    ODBC Driver for Sybase SQL Anywhere 
    ODBC Driver for Text 
    ODBC Driver for Teradata 
    ODBC Driver for Visual FoxPro
    OLE DB Data Link Connections Data Link File (UDL)
    OLE DB Data Provider Connections  OLE DB Provider for AS/400 
    OLE DB Provider for Active Directory Service 
    OLE DB Provider for DB2 
    OLD DB Provider for Internet Publishing 
    OLE DB Provider for Index Server 
    OLE DB Provider for Microsoft Jet 
    OLE DB Provider for ODBC Databases 
    OLE DB Provider for Oracle (From Microsoft) 
    OLE DB Provider for Oracle (From Oracle) 
    OLE DB Provider for Simple Provider 
    OLE DB Provider for SQL Server Remote Data Service (RDS) Connections RDS Data Control - Connect Property 
    RDS Data Control - URL PropertyADO URL Connections ADO Recordset
    MS Remote Provider Connections MS Remote - Access (Jet) 
    MS Remote - SQL Server
    Data Shape Provider Connections  MS DataShape - SQL Server
    .NET Managed Provider Connections SQL Client .NET Managed Provider (System.Data.SqlClient) 
    OLE DB .NET Managed Provider (System.Data.OleDb) 
    ODBC .NET Managed Provider (System.Data.ODBC) 
      
    ODBC DSN Connections
    Using an ODBC DSN (Data Source Name) is a two step process. 1) You must first create the DSN via the "ODBC Data Source Administrator" program 
    found in your computer's Control Panel (or Administrative Tools menu in Windows 2000).
    Make sure to create a SYSTEM DSN (not a USER DSN) when using ASP. 
    Note: You can also create the DSN via VB code.2) Then use the following connection string - with your own DSN name of course.  ;-)ODBC - DSN 
      
    oConn.Open "DSN=AdvWorks;" & _ 
              "Uid=Admin;" & _ 
              "Pwd=;
    You can also create and use a File DSN. Then use the following ADO Connection string:ODBC - File DSN 
      
    oConn.Open "FILEDSN=c:\somepath\mydb.dsn;" & _ 
              "Uid=Admin;" & _
              "Pwd=;"For more information, see: About ODBC data sources and 
    How to Use File DSNs and DSN-less ConnectionsNote: The problem with DSN is that Users can (and will) modify them (or delete by mistake), 
    then your program won't work so well... So it's better to use a DSN-Less or OLE DB Provider 
    connection string with a Trusted Connection if possible! 
    ODBC DSN-Less Connections
    ODBC Driver for AS/400 
      
    oConn.Open "Driver={Client Access ODBC Driver (32-bit)};" & _
              "System=myAS400;" & _
              "Uid=myUsername;" & _
              "Pwd=myPassword;"For more information, see:  A Fast Path to AS/400 Client/Server 
    ODBC Driver for Access 
      
    For Standard Security:oConn.Open "Driver={Microsoft Access Driver (*.mdb)};" & _ 
              "Dbq=c:\somepath\mydb.mdb;" & _
              "Uid=Admin;" & _
              "Pwd=;"If you are using a Workgroup (System database):oConn.Open "Driver={Microsoft Access Driver (*.mdb)};" & _ 
              "Dbq=c:\somepath\mydb.mdb;" & _
              "SystemDB=c:\somepath\mydb.mdw;", _
              "admin", ""If MDB is located on a network share:oConn.Open "Driver={Microsoft Access Driver (*.mdb)};" & _
              "Dbq=\\myServer\myShare\myPath\myDb.mdb;"For more information, see: Microsoft Access Driver Programming Considerations
      

  7.   

    接上ODBC Driver for dBASE 
      
    oConn.Open "Driver={Microsoft dBASE Driver (*.dbf)};" & _
             "DriverID=277;" & _
             "Dbq=c:\somepath;"Note: Specify the filename in the SQL statement. For example:
         oRs.Open "Select * From user.dbf", oConn, , ,adCmdTextNote: MDAC 2.1 (or greater) requires the Borland Database Engine (BDE) to update dBase DBF files. (Q238431).For more information, see: dBASE Driver Programming Considerations
    ODBC Driver for Excel 
      
    oConn.Open "Driver={Microsoft Excel Driver (*.xls)};" & _
              "DriverId=790;" & _
              "Dbq=c:\somepath\mySpreadsheet.xls;" & _
              "DefaultDir=c:\somepath;" For more information, see: Microsoft Excel Driver Programming Considerations
    ODBC Driver for MySQL (via MyODBC) 
      
    To connect to a local databaseoConn.Open "Driver={mySQL};" & _ 
              "Server=MyServerName;" & _
              "Option=16834;" & _
              "Database=mydb;"To connect to a remote databaseoConn.Open "Driver={mySQL};" & _ 
              "Server=db1.database.com;" & _
              "Port=3306;" & _
              "Option=131072;" & _
              "Stmt=;" & _
              "Database=mydb;" & _
              "Uid=myUsername;" & _
              "Pwd=myPassword;"For more information, see: Programs Known to Work with MyODBCODBC Driver for Oracle 
      
    For the current Oracle ODBC Driver from Microsoft:oConn.Open "Driver={Microsoft ODBC for Oracle};" & _
              "Server=OracleServer.world;" & _
              "Uid=myUsername;" & _
              "Pwd=myPassword;"
    For the older Oracle ODBC Driver from Microsoft:
    oConn.Open "Driver={Microsoft ODBC Driver for Oracle};" & _
              "ConnectString=OracleServer.world;" & _
              "Uid=myUsername;" & _
              "Pwd=myPassword;"
    For more information, see: Connection String Format and Attributes
    ODBC Driver for Paradox   
    oConn.Open "Driver={Microsoft Paradox Driver (*.db)};" & _
              "DriverID=538;" & _
              "Fil=Paradox 5.X;" & _
              "DefaultDir=c:\dbpath\;" & _
              "Dbq=c:\dbpath\;" & _
              "CollatingSequence=ASCII;" Note: MDAC 2.1 (or greater) requires the Borland Database Engine (BDE) to update Paradox ISAM fDBF files. (Q230126).
    For more information, see: Paradox Driver Programming ConsiderationsODBC Driver for SQL Server  
    For Standard Security:
    oConn.Open "Driver={SQL Server};" & _ 
              "Server=MyServerName;" & _
             "Database=myDatabaseName;" & _
             "Uid=myUsername;" & _
              "Pwd=myPassword;"For Trusted Connection security:
    oConn.Open "Driver={SQL Server};" & _ 
              "Server=MyServerName;" & _
              "Database=myDatabaseName;" & _
              "Uid=;" & _
              "Pwd=;"' or 
    oConn.Open "Driver={SQL Server};" & _ 
              "Server=MyServerName;" & _
              "Database=myDatabaseName;" & _
              "Trusted_Connection=yes;"
    To Prompt user for username and password
    oConn.Properties("Prompt") = adPromptAlways
    oConn.Open "Driver={SQL Server};" & _ 
              "Server=MyServerName;" & _ 
              "DataBase=myDatabaseName;"
       For more information, see: SQLDriverConnect (ODBC)
    ODBC Driver for Sybase  
    If using the Sybase System 11 ODBC Driver:
    oConn.Open "Driver={SYBASE SYSTEM 11};" & _
              "Srvr=myServerName;" & _
             "Uid=myUsername;" & _
              "Pwd=myPassword;"If using the Intersolv 3.10 Sybase ODBC Driver:
    oConn.Open "Driver={INTERSOLV 3.10 32-BIT Sybase};" & _
              "Srvr=myServerName;" & _
             "Uid=myUsername;" & _
              "Pwd=myPassword;"For more information, see: Sybase System 10 ODBC Driver Reference Guide
    ODBC Driver for Sybase SQL Anywhere 
      
    oConn.Open "ODBC; Driver=Sybase SQL Anywhere 5.0;" & _
              "DefaultDir=c:\dbpath\;" & _
              "Dbf=c:\sqlany50\mydb.db;" & _
             "Uid=myUsername;" & _
              "Pwd=myPassword;"
              "Dsn="""";"Note: Including the DSN tag with a null string is absolutely critical or else you get the dreaded -7778 error.
    For more information, see: Sybase SQL Anywhere User Guide
    ODBC Driver for Teradata   
    oConn.Open "Provider=Teradata;" & _
              "DBCName=MyDbcName;" & _ 
              "Database=MyDatabaseName;" & _ 
              "Uid=myUsername;" & _
              "Pwd=myPassword;"For more information, see Teradata ODBC Driver
    ODBC Driver for Text 
      
    oConn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
              "Dbq=c:\somepath\;" & _
              "Extensions=asc,csv,tab,txt;" & _
              "Persist Security Info=False"Note: Specify the filename in the SQL statement. For example:oRs.Open "Select * From customer.csv", _
            oConn, adOpenStatic, adLockReadOnly, adCmdText
    For more information, see: Text File Driver Programming Considerations
    ODBC Driver for Visual FoxPro 
      
    With a database container:oConn.Open "Driver={Microsoft Visual FoxPro Driver};" & _
              "SourceType=DBC;" & _
              "SourceDB=c:\somepath\mySourceDb.dbc;" & _
              "Exclusive=No;" Without a database container (Free Table Directory):oConn.Open "Driver={Microsoft Visual FoxPro Driver};" & _
              "SourceType=DBF;" & _
              "SourceDB=c:\somepath\mySourceDbFolder;" & _
              "Exclusive=No;" 
    For more information, see: Visual FoxPro ODBC Driver and Q165492
    OLE DB Data Link Connections
    Data Link File (UDL)
      

  8.   

    接上
    For Absolute Path:oConn.Open "File Name=c:\somepath\myDatabaseName.udl;" For Relative Path:oConn.Open "File Name=myDatabaseName.udl;"
      For more information, see: HOWTO: Use Data Link Files with ADONote: Windows 2000 no longer contains the "New | Microsoft Data Link" menu 
    anymore. You can add the Data Link menu back in the menu list by running the 
    "C:\Program Files\Common Files\System\Ole DB\newudl.reg" reg file, 
    then right-click on the desktop and select "New | Microsoft Data Link" menu.  
    Or you can also create a Data Link file by creating a text file and change it's 
    file extension to ".udl", then double-click the file.OLE DB Provider Connections
    OLE DB Provider for AS/400   
    oConn.Open "Provider=IBMDA400;" & _
              "Data source=myAS400;"
              "User Id=myUsername;" & _
              "Password=myPassword;"For more information, see:  A Fast Path to AS/400 Client/Server
    OLE DB Provider for Active Directory Service 
      
    oConn.Open "Provider=ADSDSOObject;" & _
              "User Id=myUsername;" & _
              "Password=myPassword;"
    for more information, see: Microsoft OLE DB Provider for Microsoft Active Directory Service
    OLE DB Provider for DB2 
    oConn.Open = "Provider=DB2OLEDB;" & 
               "Network Transport Library=TCPIP;" & 
               "Network Address=MyServer;" & _
               "Package Collection=MyPackage;" & 
               "Host CCSID=1142"
               "Initial Catalog=MyDB;" & 
               "User ID=MyUsername;" & _
               "Password=MyPassword;"For more information, see: OLE DB Provider for DB2 
    and INF: Configuring Data Sources for the Microsoft OLE DB Provider for DB2 OLE DB Provider for Index Server  
    oConn.Open "Provider=msidxs;" & _
              "Data source=MyCatalog;"
      For more information, see: Microsoft OLE DB Provider for Microsoft Indexing Service
    OLE DB Provider for Internet Publishing 
      
    oConn.Open "Provider=MSDAIPP.DSO;" & _
          "Data Source=http://mywebsite/myDir;" & _ 
          "User Id=myUsername;" & _
          "Password=myPassword;" 
     For more information, see: Microsoft OLE DB Provider for Internet Publishing and Q245359
    OLE DB Provider for Microsoft Jet 
      
    For standard security:
    oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
              "Data Source=c:\somepath\myDb.mdb;" & _ 
              "User Id=admin;" & _
              "Password=;"If using a Workgroup (System Database):
    oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
              "Data Source=c:\somepath\mydb.mdb;" & _ 
              "Jet OLEDB:System Database=MySystem.mdw;", _
              "admin", "" Note, remember to convert both the MDB and the MDW to the 4.0 database format when using the 4.0 OLE DB Provider.
    If MDB has a database password:oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
              "Data Source=c:\somepath\mydb.mdb;" & _ 
              "Jet OLEDB:Database Password=MyDbPassword;", _
              "admin", ""If MDB is located on a network share:oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
              "Data Source=\\myServer\myShare\myPath\myDb.mdb;If want to open up the Access database exclusively:oConn.Mode = adModeShareExclusive
    oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
              "Data Source=c:\somepath\myDb.mdb;" & _
              "User Id=admin;" & _
              "Password=;"
    For more information, see: OLE DB Provider for Microsoft Jet, Q191754, Q225048, Q239114, and Q271908
    You can also open an Excel Spreadsheet using the "OLE DB Provider for Microsoft Jet" 
    oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
              "Data Source=c:\somepath\myExcelSpreadsheet.xls;" & _
              "Extended Properties=""Excel 8.0;HDR=Yes;"";" Where "HDR=Yes" means that there is a header row in the cell range 
    (or named range), so the provider will not include the first row of the
    selection into the recordset. If "HDR=No", then the provider will include
    the first row of the cell range (or named ranged) into the recordset. For more information, see: Q278973
    You can also open a Text File using the "OLE DB Provider for Microsoft Jet" oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ 
              "Data Source=c:\somepath\;" & _ 
              "Extended Properties=""text;HDR=Yes;FMT=Delimited;"";" ' Then open a recordset based on a select on the actual file
    oRs.Open "Select * From MyTextFile.txt", oConn, adOpenStatic, adLockReadOnly, adCmdText For more information, see: Q262537 
    OLE DB Provider for ODBC Databases 
      
    For Access (Jet):oConn.Open "Provider=MSDASQL;" & _ 
              "Driver={Microsoft Access Driver (*.mdb)};" & _
              "Dbq=c:\somepath\mydb.mdb;" & _
              "Uid=myUsername;" & _
              "Pwd=myPassword;"For SQL Server:oConn.Open "Provider=MSDASQL;" & _ 
              "Driver={SQL Server};" & _
              "Server=myServerName;" & _
              "Database=myDatabaseName;" & _
              "Uid=myUsername;" & _
              "Pwd=myPassword;"For more information, see: Microsoft OLE DB Provider for ODBC
    OLE DB Provider for Oracle (from Microsoft) 
      
    oConn.Open "Provider=msdaora;" & _
              "Data Source=MyOracleDB;" & _ 
              "User Id=myUsername;" & _
              "Password=myPassword;"For more information, see: Microsoft OLE DB Provider for Oracle
    OLE DB Provider for Oracle (from Oracle) 
      
    For Standard Security:oConn.Open "Provider=OraOLEDB.Oracle;" & _
              "Data Source=MyOracleDB;" & _ 
              "User Id=myUsername;" & _
              "Password=myPassword;"For a Trusted Connection:oConn.Open "Provider=OraOLEDB.Oracle;" & _
              "Data Source=MyOracleDB;" & _ 
              "User Id=/;" & _
              "Password=;"
    ' OroConn.Open "Provider=OraOLEDB.Oracle;" & _
              "Data Source=MyOracleDB;" & _ 
              "OSAuthent=1;"
     Note: "Data Source=" must be set to the appropriate Net8 name which is known to the naming method in use. For example, for Local Naming, it is the alias in the tnsnames.ora file; for Oracle Names, it is the Net8 Service Name.