是这样的,数据库的连接及一般的操作都没有问题,
但是在SQL句子后面加上加 FOR UPDATE NOWAIT 后问题就出来了
如果我在其他的地方将数据锁住,
按理说他应该报 ORA-00054 的错误,
但是实际情况是搜不到数据,
真奇怪,
但是如果我把数据库的连接方式换成
MSDASQL.1的话就可以正常的抓到 ORA-00054 的错误
为什么呢???????????
但是在SQL句子后面加上加 FOR UPDATE NOWAIT 后问题就出来了
如果我在其他的地方将数据锁住,
按理说他应该报 ORA-00054 的错误,
但是实际情况是搜不到数据,
真奇怪,
但是如果我把数据库的连接方式换成
MSDASQL.1的话就可以正常的抓到 ORA-00054 的错误
为什么呢???????????
Public Function ConnectToDb(ByRef cn As Connection, strUsername As String, _
strPassword As String, strDataBase As String) As Boolean
On Error GoTo ConnectToDbError
ConnectToDb = False
Screen.MousePointer = vbHourglass
Set cn = New Connection
cn.Open "Provider=MSDAORA.1" & ";" & "User ID=" & strUsername & ";" & "Password=" & strPassword & ";" & _
"Data Source=" & strDataBase & ";" & "Persist Security Info=False"
Screen.MousePointer = vbDefault
ConnectToDb = True
Exit Function
ConnectToDbError:
Screen.MousePointer = vbDefault
ConnectToDb = False
If g_bDebug Then
ShowDebugInfo
End If
End Function
Dim sDataSource As String
Dim sUserID As String
Dim sPassWord As String sDataSource = S_GetIniFileString("DBID", "DATASOURCE", sIniFileFullName)
sUserID = S_GetIniFileString("DBID", "USERID", sIniFileFullName)
sPassWord = S_GetIniFileString("DBID", "PASSWORD", sIniFileFullName)On Error GoTo Open_error:
Set CON_NYUTEN = New ADODB.Connection
CON_NYUTEN.ConnectionString = "Provider=MSDASQL.1;" & _
"Data Source=" & sDataSource & ";" & _
"User ID=" & sUserID & ";" & _
"Password=" & sPassWord & ";" & _
"Persist Security Info=True"
CON_NYUTEN.Open
ConnectToDB = 0
Exit FunctionOpen_error:
Call SqlError
Set CON_NYUTEN = Nothing
ConnectToDB = -1
End Function