使用 VBScript 在成功执行 SQL 时返回数据库消息



我需要在使用 vbscript 成功执行 sql 语句后捕获 sql 消息。这是我的代码。

Public Function ExecuteAPI_String(sql_Statement)
Dim num 
On Error Resume Next
Set objRecordSet = objConnection.Execute sql_Statement,num,adExecuteNoRecords
If Err.Number <> 0 Then
    ExecuteSQLStatement_String = Err.description
    objRecordSet.Close
    Err.Clear
Else
    ExecuteAPI_String = num & "records were affected"
    objRecordSet.Close
End If

这里的问题是使用On Error Resume Next,因为它会导致跳过任何错误并设置Err对象的语句。如果您注释掉On Error Resume Next您将看到与SQL查询的执行无关的实际错误,如这一行;

Set objRecordSet = objConnection.Execute sql_Statement,num,adExecuteNoRecords

不是有效的语句,因为该方法需要像这样用括号括起来;

Set objRecordSet = objConnection.Execute(sql_Statement, num, adExecuteNoRecords)

您还需要确保传递给 Execute() 方法的所有值都有效(例如正确定义adExecuteNoRecords)。

确定该行正确执行后,您可以取消注释On Error Resume Next

最新更新