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

これは、スクリプト コンポーネントを使用して DB2 に接続している SSIS パッケージですが、接続を開いていません。

私のコードは

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: ERROR [58031] [IBM] SQL1031N 示されたファイル システムでデータベース ディレクトリが見つかりません。SQLSTATE=58031

Microsoft.SqlServer.Dts.Pipeline.ScriptComponentHost.HandleUserException (例外 e) で Microsoft.SqlServer.Dts.Pipeline.ScriptComponentHost.PrimeOutput (Int32 出力、Int32[] outputIDs、PipelineBuffer[] バッファー) で Microsoft.SqlServer.Dts.Pipeline .ManagedComponentHost.HostPrimeOutput(IDTSManagedComponentWrapper100 ラッパー、Int32 出力、Int32[] 出力 ID、IDTSBuffer100[] バッファー、IntPtr ppBufferWirePacket)

私が前進できるように、あなたの貴重な提案を私に提供してください。

4

1 に答える 1

0

問題となっている問題:

問題は、接続文字列で接続するサーバーを指定していないことです。次のリンクは、DB2 接続文字列を作成する方法を示しています。

IBM DB2 の接続文字列

SSIS 内のデータベースに接続する適切な方法:

そうは言っても、質問でやろうとしていることは、データベースに接続する適切な方法ではありません。DB2 データ ソースに接続するには、SSIS プロジェクト レベルでデータ ソースを作成するか、SSIS パッケージ内に接続マネージャーを作成する必要があります。次のリンクは、 を使用して DB2 データ ソースに接続する方法を説明していますMicrosoft OLE DB Provider for DB2

SSIS を使用した DB2 への接続

SSIS から DB2 への接続 - 別のリンク

また、接続マネージャーを追加する方法に関するMSDNのドキュメントは次のとおりです

方法: パッケージ内の接続マネージャーを追加または削除する

于 2012-10-31T07:48:38.547 に答える