gpt4 book ai didi

sql-server - 如何使用 ADO 从查询中检索所有错误和消息

转载 作者:行者123 更新时间:2023-12-03 22:59:49 24 4
gpt4 key购买 nike

当一个 SQL 批处理返回多个消息时,例如打印语句,然后我只能使用 ADO 连接的 Errors 集合检索第一个。我如何获得其余的消息?

如果我运行这个脚本:

Option Explicit
Dim conn
Set conn = CreateObject("ADODB.Connection")
conn.Provider = "SQLOLEDB"
conn.ConnectionString = "Data Source=(local);Integrated Security=SSPI;Initial Catalog=Master"
conn.Open

conn.Execute("print 'Foo'" & vbCrLf & "print 'Bar'" & vbCrLf & "raiserror ('xyz', 10, 127)")

Dim error
For Each error in conn.Errors
MsgBox error.Description
Next

然后我只得到“Foo”,而不是“Bar”或“xyz”。

有没有办法获取剩余的消息?

最佳答案

我自己想出来的。

这有效:

Option Explicit
Dim conn
Set conn = CreateObject("ADODB.Connection")
conn.Provider = "SQLOLEDB"
conn.ConnectionString = "Data Source=(local);Integrated Security=SSPI;Initial Catalog=Master"
conn.Open

Dim rs
Set rs = conn.Execute("print 'Foo'" & vbCrLf & "print 'Bar'" & vbCrLf & "raiserror ('xyz', 10, 127)")

Dim error
While not (rs is nothing)
For Each error in conn.Errors
MsgBox error.Description
Next
Set rs = rs.NextRecordSet
Wend

关于sql-server - 如何使用 ADO 从查询中检索所有错误和消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3013447/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com