OLE DB和ADO

leoxue 2003-12-07 02:57:25
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方式比较好呢?

谢谢大家啦
...全文
46 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
jornet 2003-12-08
  • 打赏
  • 举报
回复
其实ADO只是把ole db封装了一下,形成一个新的类库,正如楼上说的是为了照顾vb的程序员,应此,ole db的效率高与ADO,但vb中从来都只是用ado,因为ole db在vb中使用太不方便,需要自己申明dll,然后调用。。。
yangfanatcsdn 2003-12-08
  • 打赏
  • 举报
回复
OLE DB 是给C/C++程序员用的
ADO 是微软老总为照顾我们VB程序员开发的编程接口。当然要用ADO。
今年过年不收礼呀,收礼就收ADO!
chao778899 2003-12-08
  • 打赏
  • 举报
回复
谢谢小马哥:)
yangfanatcsdn 2003-12-08
  • 打赏
  • 举报
回复
那要看你的连接字符串中有关数据提供者的配置。
默认使用 ODBC 数据驱动。
yoki 2003-12-08
  • 打赏
  • 举报
回复
Access
ODBC


Standard Security:
"Driver={Microsoft Access Driver (*.mdb)};Dbq=\somepath\mydb.mdb;Uid=Admin;Pwd=asdasd;"


Workgroup:
"Driver={Microsoft Access Driver (*.mdb)};Dbq=\somepath\mydb.mdb;SystemDB=\somepath\mydb.mdw;","admin", ""


OLEDB, OleDbConnection (.NET)


Standard security:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;User Id=admin;Password=asdasd;"


Workgroup (system database):
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;Jet OLEDB:System Database=system.mdw;","admin", ""


With password:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\somepath\mydb.mdb;Jet OLEDB:Database Password=MyDbPassword;","admin", ""


Oracle
ODBC


New version:
"Driver={Microsoft ODBC for Oracle};Server=OracleServer.world;Uid=Username;Pwd=asdasd;"


Old version:
"Driver={Microsoft ODBC Driver for Oracle};ConnectString=OracleServer.world;Uid=myUsername;Pwd=myPassword;"


OLEDB, OleDbConnection (.NET)


Standard security:
"Provider=msdaora;Data Source=MyOracleDB;User Id=UserName;Password=asdasd;"
This one's from Microsoft, the following are from Oracle
Standard Security:
"Provider=OraOLEDB.Oracle;Data Source=MyOracleDB;User Id=Username;Password=asdasd;"


Trusted Connection:
"Provider=OraOLEDB.Oracle;Data Source=MyOracleDB;OSAuthent=1;"


OracleConnection (.NET)


Standard:
"Data Source=Oracle8i;Integrated Security=yes";
This one works only with Oracle 8i release 3 or later
Declare the OracleConnection:

C#:
using System.Data.OracleClient;
OracleConnection oOracleConn = new OracleConnection();
oOracleConn.ConnectionString = "my connectionstring";
oOracleConn.Open();

VB.NET:
Imports System.Data.OracleClient
Dim oOracleConn As OracleConnection = New OracleConnection()
oOracleConn.ConnectionString = "my connectionstring"
oOracleConn.Open()


Data Shape


MS Data Shape:
"Provider=MSDataShape.1;Persist Security Info=False;Data Provider=MSDAORA;Data Source=orac;user id=username;password=mypw"


MySQL
ODBC


Local database:
"Driver={mySQL};Server=mySrvName;Option=16834;Database=mydatabase;"


Remote database:
"Driver={mySQL};Server=data.domain.com;Port=3306;Option=131072;Stmt=;Database=my-database;Uid=username;Pwd=password;"


OLEDB, OleDbConnection (.NET)


Standard:
"Provider=MySQLProv;Data Source=mydb;User Id=UserName;Password=asdasd;"
MySqlConnection (.NET)


EID:
"Data Source=server;Database=mydb;User ID=username;Password=pwd;Command Logging=false"
This one is used with eInfoDesigns dbProvider, an add-on to .NET
Declare the MySqlConnection:

C#:
using EID.MySqlClient;
MySqlConnection oMySqlConn = new MySqlConnection();
oMySqlConn.ConnectionString = "my connectionstring";
oMySqlConn.Open();

VB.NET:
Imports EID.MySqlClient
Dim oMySqlConn As MySqlConnection = New MySqlConnection()
oMySqlConn.ConnectionString = "my connectionstring"
oMySqlConn.Open()


IBM DB2
OLEDB, OleDbConnection (.NET) from ms


TCP/IP:
"Provider=DB2OLEDB;Network Transport Library=TCPIP;Network Address=XXX.XXX.XXX.XXX;Initial Catalog=MyCtlg;Package Collection=MyPkgCol;Default Schema=Schema;User ID=MyUser;Password=MyPW"


APPC:
"Provider=DB2OLEDB;APPC Local LU Alias=MyAlias;APPC Remote LU Alias=MyRemote;Initial Catalog=MyCtlg;Package Collection=MyPkgCol;Default Schema=Schema;User ID=MyUser;Password=MyPW"


Sybase
ODBC


Standard:
"Driver={SYBASE SYSTEM 11};Srvr=Aron1;Uid=username;Pwd=password;"


Intersolv 3.10:
"Driver={INTERSOLV 3.10 32-BIT Sybase};Srvr=Aron1;Uid=username;Pwd=password;"


Informix
ODBC


Informix 3.30:
"Dsn='';Driver={INFORMIX 3.30 32 BIT};Host=hostname;Server=myserver;Service=service-name;Protocol=olsoctcp;Database=mydb;UID=username;PWD=myPwd


Informix-CLI 2.5:
"Driver={Informix-CLI 2.5 (32 Bit)};Server=myserver;Database=mydb;Uid=username;Pwd=myPwd"


DSN
ODBC


DSN:
"DSN=myDsn;Uid=username;Pwd=;"


File DSN:
"FILEDSN=c:\myData.dsn;Uid=username;Pwd=;"


Excel
ODBC


Standard:
"Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=C:\MyExcel.xls;DefaultDir=c:\mypath;"


OLE DB


Standard:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyExcel.xls;Extended Properties=Excel 8.0;HDR=Yes;"
"HDR=Yes;" indicates that the first row contains columnnames, not data
DBF / FoxPro
ODBC


standard:
"Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=c:\mydbpath;"


OLEDB, OleDbConnection (.NET)


standard:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\folder;Extended Properties=dBASE IV;User ID=Admin;Password="


Pervasive
ODBC


Standard:
"Driver={Pervasive ODBC Client Interface};ServerName=srvname;dbq=@dbname"


UDL
UDL


UDL:
"File Name=c:\myDataLink.udl;"

yoki 2003-12-08
  • 打赏
  • 举报
回复
各种数据库连接大全

SQL Server
ODBC


Standard Security:
"Driver={SQL Server};Server=Aron1;Database=pubs;Uid=sa;Pwd=asdasd;"


Trusted connection:
"Driver={SQL Server};Server=Aron1;Database=pubs;Trusted_Connection=yes;"


Prompt for username and password:
oConn.Properties("Prompt") = adPromptAlways
oConn.Open "Driver={SQL Server};Server=Aron1;DataBase=pubs;"


OLEDB, OleDbConnection (.NET)


Standard Security:
"Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;User Id=sa;Password=asdasd;"


Trusted Connection:
"Provider=sqloledb;Data Source=Aron1;Initial Catalog=pubs;Integrated Security=SSPI;"
(use serverName\instanceName as Data Source to use an specifik SQLServer instance, only SQLServer2000)
Prompt for username and password:
oConn.Provider = "sqloledb"
oConn.Properties("Prompt") = adPromptAlways
oConn.Open "Data Source=Aron1;Initial Catalog=pubs;"


Connect via an IP address:
"Provider=sqloledb;Data Source=190.190.200.100,1433;Network Library=DBMSSOCN;Initial Catalog=pubs;User ID=sa;Password=asdasd;"
(DBMSSOCN=TCP/IP instead of Named Pipes, at the end of the Data Source is the port to use (1433 is the default))
hhjjhjhj 2003-12-07
  • 打赏
  • 举报
回复
学习方法之一
插入Adodc控件(Microsoft ADO Data Control 6.0)
用它的自定义向导分别用各种方法连接数据库,然后查看它的Connctionstring
leoxue 2003-12-07
  • 打赏
  • 举报
回复
谢谢大家,那我如果想用ole db方式,连接DBF,DBC等VFP的数据库,我该如何写连接串呢?有什么简单的方法可以生成连接串呢?
simanh 2003-12-07
  • 打赏
  • 举报
回复
2种不同的东西
houfuzhu 2003-12-07
  • 打赏
  • 举报
回复
老兄,你用的是ado控件,当然是
ado啦,至于ole db 楼上的大虾们说的
都很在理,我就敢不再说
yanudd 2003-12-07
  • 打赏
  • 举报
回复
OLEDB是一种技术,他相当于一个连接数据库的底层接口,把所有的数据库都按照OLEDB的标准转换为OLEDB格式,而ADO则是作为应用程序访问OLEDB的高层接口!
jpinglee 2003-12-07
  • 打赏
  • 举报
回复
你用的是ADO啊,OLE DB 是数据库类型,与ADO没关系
ask999 2003-12-07
  • 打赏
  • 举报
回复
oledb
用控件编程不是很灵活。

1,217

社区成员

发帖
与我相关
我的任务
社区描述
VB 数据库(包含打印,安装,报表)
社区管理员
  • 数据库(包含打印,安装,报表)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧