【发布时间】:2019-06-03 22:31:48
【问题描述】:
我正在尝试连接到 DB2 数据库并执行一些查询。几天前我让它工作了,但现在它给出了一些非常奇怪的错误,我不知道为什么。
PowerShell 连接代码
$connection = New-Object System.Data.OleDb.OleDbConnection("Provider=IBMDADB2;Database=X;HostName=X;Protocol=TCPIP;Port=X;Uid=X;Pwd=X;CurrentSchema=X");
$ds = New-Object "System.Data.DataSet"
$da = New-Object System.Data.OleDb.OleDbDataAdapter($QuerySQL, $connection)
$da.Fill($ds)
$ds.Tables[0].Rows |
select * -ExcludeProperty RowError, RowState, HasErrors, Name, Table, ItemArray |
Export-Csv "c:\Scripts\results.csv" -encoding "unicode" -notype
我看到的错误:
使用“1”参数调用“Fill”的异常:“没有可用的错误消息,结果代码:E_UNEXPECTED(0x8000FFFF)。”
有人知道为什么会出现这种情况吗?
我还有其他使用 Fill() 的脚本以完全相同的方式使用不会产生错误,所以这真的让我很困惑!
【问题讨论】:
-
我猜如果您的其他脚本使用相同的模式连接到相同的 DB2 实例,那么问题可能出在您的 SQL 查询上。您可以将其添加到问题中吗?
-
我已经单独执行了查询,它的工作原理:/
标签: powershell db2