0

嗨,我正在尝试连接到 DB2,但它给出了一个错误

[UDB Source [1]] Error: IBM.Data.DB2.DB2Exception: ERROR [58031] [IBM]
SQL1031N  The database directory cannot be found on the indicated file
system.  SQLSTATE=58031

这是一个 SSIS 包,我在其中使用脚本组件连接到 DB2。但它没有打开连接。

我的一段代码是

string dbName = "GRTST";
string uid = "c001";
string pwd = "winter1";

DB2Connection conn = new DB2Connection();
conn.ConnectionString = "DataBase=" + dbName + ";" + "Uid=" + uid + ";" +"Pwd="+ pwd + ";";

conn.Open();

错误描述是

[UDB 源 [1]] 错误:IBM.Data.DB2.DB2Exception:错误 [58031] [IBM] SQL1031N 在指示的文件系统上找不到数据库目录。SQLSTATE=58031

在 Microsoft.SqlServer.Dts.Pipeline.ScriptComponentHost.PrimeOutput(Int32 outputs, Int32[] outputIDs, PipelineBuffer[] buffers) 在 Microsoft.SqlServer.Dts.Pipeline 的 Microsoft.SqlServer.Dts.Pipeline.ScriptComponentHost.HandleUserException(Exception e) .ManagedComponentHost.HostPrimeOutput(IDTSManagedComponentWrapper100 包装器,Int32 输出,Int32[] outputIDs,IDTSBuffer100[] 缓冲区,IntPtr ppBufferWirePacket)

请提供您宝贵的建议,以便我继续前进。

4

1 回答 1

0

有问题的问题:

问题中的问题是您没有在连接字符串中指定要连接的服务器。以下链接显示了如何制定 DB2 连接字符串:

IBM DB2 的连接字符串

在 SSIS 中连接到数据库的适当方法:

话虽如此,您在问题中尝试做的并不是连接数据库的合适方式。您应该在 SSIS 项目级别创建一个数据源或在 SSIS 包中创建一个连接管理器以连接到您的 DB2 数据源。以下链接描述了如何使用 连接到 DB2 数据源Microsoft OLE DB Provider for DB2

使用 SSIS 连接到 DB2

从 SSIS 连接到 DB2 - 另一个链接

此外,这里是关于如何添加连接管理器的 MSDN 文档

如何:在包中添加或删除连接管理器

于 2012-10-31T07:48:38.547 回答