oracle数据查询,表如果没数据会报异常。
local $connection="Driver={Microsoft ODBC for Oracle};Server="&$ipm_server&";Uid="&$ipm_uid&";Pwd="&$ipm_pwd&";"local $adoCon = ObjCreate("ADODB.Connection" )
$adoCon.open($connection)
local $adoRS=ObjCreate("ADODB.RecordSet")
If Not @error Then
Local $sql = "select vc_stock_code,vc_stock_name,c_inquiry,c_shortlisted,c_purchase,c_win from t_ipm_ipomonitor where vc_stock_code='"&$stockCode&"'"
WriteLog($sql)
$adoRS.Open($sql,$adoCon)
Local $vc_stock_code=$adoRS.Fields("vc_stock_code").value
Local $vc_stock_name=$adoRS.fields("vc_stock_name").value
Local $c_inquiry=$adoRS.fields("c_inquiry").value
Local $c_shortlisted=$adoRS.fields("c_shortlisted").value
Local $c_purchase=$adoRS.fields("c_purchase").value
Local $c_win=$adoRS.fields("c_win").value
$adoRS.close
Else
MsgBox(0, "", "无法创建ADODB.RecordSet对象. 错误代码: " & Hex(@error, 8))
EndIf
$adoCon.close
异常:
"E:\Users\s-lib\Desktop\????\DataAccessLayer.au3" (122) : ==> The requested action with this object has failed.:
Local $vc_stock_code=$adoRS.Fields("vc_stock_code").value
Local $vc_stock_code=$adoRS.Fields("vc_stock_code")^ ERROR
原因:t_ipm_ipomonitor 没有数据记录,$adoRS.Fields("vc_stock_code").value 获取异常,大神们怎么处理这种异常!
1. 在查詢前先使用查詢 條件查詢語法讓他一定有返回值譬如 COUNT(*) 這樣 有值就會返回筆數,無值就會返回0
在 判斷 大於0 怎麼處理 等於0 怎麼處理 kk_lee69 发表于 2018-11-15 09:14
1. 在查詢前先使用查詢 條件查詢語法讓他一定有返回值譬如 COUNT(*) 這樣 有值就會返回筆數,無 ...
我看了你之前发的帖子,代码应该加上:If Not $adoRS.eof And Not $adoRS.bof Then libo1220 发表于 2018-11-15 09:59
我看了你之前发的帖子,代码应该加上:If Not $adoRS.eof And Not $adoRS.bof Then
ㄟ.............你說的 好像 點醒了我這樣做 應該可以減少 很多查詢動作
页:
[1]