1、如果不手动配置数据源,你是不能用DOBC来连接ORACLE的数据库的
如果想手动配置数据源则 ,则你可以ORACLE FOR OLE DB来连接数据库,这样除了配置客户端之外,就不需要配置其它的内容:dbstring = 'Provider=OraOLEDB.Oracle.1;Password=' + Password + ';Persist Security Info=True;User ID=' + UserName + ';Data Source='+ServerName+';Extended Properties=""';
上面的SERVER指的是你配置服务名,而不是机器名,在ORACLE8以后都用的是SERVER_ID(服务名),而不是用的数据库名这概念
如果想手动配置数据源则 ,则你可以ORACLE FOR OLE DB来连接数据库,这样除了配置客户端之外,就不需要配置其它的内容:dbstring = 'Provider=OraOLEDB.Oracle.1;Password=' + Password + ';Persist Security Info=True;User ID=' + UserName + ';Data Source='+ServerName+';Extended Properties=""';
上面的SERVER指的是你配置服务名,而不是机器名,在ORACLE8以后都用的是SERVER_ID(服务名),而不是用的数据库名这概念
应该是你用net8创建的连接字符串
SELECT MONTHS_BETWEEN
(TO_DATE(’02-02-1995’,’MM-DD-YYYY’),
TO_DATE(’01-01-1995’,’MM-DD-YYYY’) ) "Months"
FROM DUAL;Months
----------
1.03225806
Dim OracleDBSession As Object
Dim SecDB As Object
Dim Sec As Object
Dim SecRecord As Object
Set OracleDBSession = CreateObject("OracleInProcServer.XOraSession")
Set SecDB = OracleDBSession.opendatabase("net8_name", "user_name/password", &H0&)
Set Sec = SecDB.createdynaset("select * from user_tables", &H0&)
Set SecRecord = Sec.fields
Do While Not Sec.EOF
Debug.Print SecRecord(0)
Sec.movenext
Loop
要访问自动化服务器所提供的接口,就需要首先创建一个服务器的实例,在VB中,这是通过调用CreateOjbect函数来完成的。这个函数的参数是组件的ID。CreateObject返回一个接口,从此接口可以获得组件的其他接口。OraSession是调用CreateObject时由OO4O返回的接口。
在前面的例子,是通过下面的语句来实现这一点的:
Set OracleDBSession = CreateObject("OracleInProcServer.XOraSession")
OracleInProcServer.XoraSession是用于OO4O的版本独立的程序ID,它由ORACLE客户安装程序在Windows Registry中注册,它是Class ID(CLSID)的符号名,CLSID是标识OO4O组件的全局唯一标识符。OracleDBSession是保存OraSession接口的实例的变量。OraSession主要用来作为创建OraDatabases的工厂对象。
OraSession接口的OpenDatabase方法被用于记录到ORACLE数据库的连接。这个方法还返回到OraDatabase接口的引用。OraDatabase提供了用于执行SQL语句和PL/SQL块的方法。下面一句处理的是连接:
Set SecDB = OracleDBSession.opendatabase("net8_name", "user_name/password", &H0&)
其中net_name,user_name,password等几项替换成实际的名字。
连接速度怎么样?