本文共 1907 字,大约阅读时间需要 6 分钟。
一、 设置连接对象和连接记录集 :
Public gLoginCn As ADODB.Connection ' 连接 Login 数据库
Public gLoginRs As ADODB.Recordset ' 定义记录集
二、 在模块中实例化对象:
Set gloginCn=new adodb.connection
Set gloginRs=new adodb.Recordset
三、 三种数据库的链接方法
Oracle
strSQL = "Provider=OraOLEDB.Oracle.1;Password=" & tOracle.Password & ";Persist Security Info=True;User ID=" & _
tOracle.UserName & ";Data Source=" & tOracle.DataSource & ";Pooling =false"
' 问题由于 oracle 重启或者连接中断而 ADO.Net 仍然未释放连接所致 ,
' 解决方法是通过禁用 OracleClient 的 Pooling, 禁用方法是在连接字符串中加上 Pooling=false.
' http://blog.joycode.com/uestc95/archive/2005/09/27/64200.aspx
Set gLinkOracle9i = New ADODB.Connection
gLinkOracle9i.CursorLocation = adUseClient
gLinkOracle9i.Open strSQL
Access:
strSQL = "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;" & _
"Data Source=" & App.Path & "/ 数据库 /" & Mdb & ".mdb" ' 连接数据库 SQL 语句
Set AccessCn = New ADODB.Connection '' 实例化 Connection 对象 AccessCn
AccessCn.ConnectionString = strSQL
AccessCn.Open ' 打开数据库连接
SQL:
strSQL = "Provider=SQLOLEDB.Oracle.1;Password=" & tOracle.Password & ";Persist Security Info=True;User ID=" & _
tOracle.UserName & ";Data Source=" & tOracle.DataSource & ";Pooling =false"
' 问题由于 oracle 重启或者连接中断而 ADO.Net 仍然未释放连接所致 ,
' 解决方法是通过禁用 OracleClient 的 Pooling, 禁用方法是在连接字符串中加上 Pooling=false.
' http://blog.joycode.com/uestc95/archive/2005/09/27/64200.aspx
Set gLinkSQL = New ADODB.Connection
gLinkSQL.CursorLocation = adUseClient
gLinkSQL.Open strSQL
四、 判断表是否存在于数据库中
gOldTableRs.CursorLocation = adUseClient
strSQL = "SELECT Table_Name FROM Tabs WHERE Table_Name='" & UCase(labOldTab.Caption) & "'" ' 表名强制为大写 , 判断是否存在
gOldTableRs.Open strSQL, gOldTableCn, adOpenDynamic, adLockReadOnly ' 打开数据库
返回 gOldTableRs.RecordCount 为一表存在,反之不存在
五、 记录集主要是用于对字段的操作和记录的操作
tTable.ZdName(i) = ObjRs.Fields(i).Name
tTable.ZdType(i) = ObjRs.Fields(i).Type
tTable.ZdSize(i) = ObjRs.Fields(i).DefinedSize
tTable.ZdScale(i) = ObjRs.Fields(i).NumericScale
转载地址:http://ommjz.baihongyu.com/