色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

ado 鏈接oracle

謝彥文2年前8瀏覽0評論

ADO(ActiveX Data Objects)是一種面向對象的數據訪問技術,它提供了一系列的接口和方法,可以讓開發人員在應用程序中更加容易地對關系型數據庫進行訪問和操作。
本文介紹如何使用ADO鏈接Oracle數據庫,下面舉個例子:

Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
conn.ConnectionString = "Provider=OraOLEDB.Oracle;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=xxxx)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=xxx)));User Id=xxx;Password=xxx;"
conn.Open

上面的代碼中,我們使用OraOLEDB.Oracle提供的Oracle鏈接PROVIDER,其中Data Source是DB連接信息,User Id是鏈接數據庫的用戶名,Password是連接密碼。如果沒有其他的關鍵字設定,就會使用默認值鏈接數據庫。

另外,在鏈接Oracle數據庫的時候,需要一些準備工作,比如需要在Windows注冊表中注冊一些項來連接Oracle數據庫,例如:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\MSDTC\MTxOCI]
"OracleXaLib"="oraclient11.dll"
"OracleSqlLib"="orasql11.dll"

以上注冊表信息表明了系統使用Oracle數據庫時需要的OCI文件信息。

成功連接數據庫后,接下來可以進行一些操作。I、子查詢的例子:

Dim rs As ADODB.Recordset
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open "SELECT * FROM tableA WHERE id IN (SELECT id FROM tableB)", conn
Do While Not rs.EOF
Response.Write rs.Fields("id") & "
" rs.MoveNext Loop

以上代碼聯結了tableA和tableB兩個表,可以在tableA表中找到與tableB表中相同id值的記錄。

II、批量操作的例子:

Dim sql As String
Dim oCount As Integer
For i = 1 To 100
sql = "INSERT INTO test_table(name, age) VALUES ('testName" & i & "', 20)"
conn.Execute sql
oCount = oCount + 1
Next
Response.Write oCount & " rows were affected"

環視的循環向test_table表中插入多行記錄。

III、超時設置的例子:

Dim conn As ADODB.Connection
Set conn = New ADODB.Connection
On Error Resume Next
conn.CommandTimeout = 10
conn.Open "Provider=OraOLEDB.Oracle;Data Source=xxx;User Id=xxx;Password=xxx;"
If Err.Number >0 Then
Response.Write "database connection failure, please check your server"
Err.Clear
Set conn = Nothing
Response.End
End If
On Error GoTo 0

以上代碼設置CommandTimeout為10秒,如果在10秒內沒有連接成功就會報出錯誤信息。

綜上所述,ADO鏈接Oracle數據庫的方法是比較簡單的,只要明確鏈接需要的 PROVIDER、Data Source、用戶名、密碼等參數信息,在代碼中加入相應的設置即可。常見的查詢、批量操作和超時設置等,也都可以根據需要在代碼中實現。