0

実際、私の仕事は、mysql データ テーブルからSQL Server テーブルにバックアップ データを取得することです。

そこで、SQL Server 2000 で DTS パッケージを作成しました。パッケージを手動で実行すると、エラーなく正常に実行され、MySQL から SQL Server にデータが転送されました。

しかし、スケジュールジョブを使用してパッケージを実行すると、以下のエラーが発生しました

DTSRun: 読み込み中...
DTSRun: 実行中...
DTSRun OnStart:
DTSStep_DTSDataPumpTask_1 DTSRun OnError: DTSStep_DTSDataPumpTask_1、エラー = -2147467259 (80004005) エラー文字列: [Microsoft][ODBC Driver Manager] データ ソース名が見つからず、既定のドライバーが指定されていません エラーソース: Microsoft OLE DB Provider for ODBC Drivers ヘルプ ファイル: ヘルプ コンテキスト: 0

エラー詳細レコード:

エラー: -2147467259 (80004005); プロバイダー エラー: 0 (0)
エラー文字列: [Microsoft][ODBC Driver Manager] データ ソース名が見つからず、既定のドライバーが指定されていません
エラー ソース: Microsoft OLE DB Provider for ODBC Drivers
ヘルプ ファイル: ヘルプ コンテキスト: 0

DTSRun OnFinish: DTSStep_DTSDataPumpTask_1 DTSRun: パッケージの実行が完了しました。

だからこれで私を助けてください.....

4

1 に答える 1

0

コメンターが述べたように、データ ソースの構成に問題がある可能性があります。MySQL DSN をシステム DSN ではなくユーザー DSN として設定している場合は、それを変更する必要があります。ODBC 構成ツールを開き、「ユーザー」(デフォルトの場所) ではなく「システム」テーブルに移動し、そこにデータ ソースを作成します。

x64 の問題である可能性もあります。使用している Windows のバージョンが x64 の場合、デフォルトで開く ODBC パネルには x64 データ ソースが表示されます。x86 バージョンの SQL Server を使用している場合 (SQL 2000 には両方あります)、次の場所から起動できる x86 ODBC アドミニストレーターでデータ ソースを作成する必要があります。

C:\Windows\SysWOW64\odbcad32.exe

それらが起動されると、それらはまったく同じに見えるため、どちらが開いているかを判断するのが難しい場合があります. 一般的な指標として、x64 ドライバー リストは通常​​、かなり短いということです。私のマシンでは、x86 バージョンには約 25 のドライバーがあり、x64 バージョンには 3 つしかありません。SQL 2000 x86 を使用している場合は、サーバーが x64 であっても、x86 バージョンの MySQL ドライバーもインストールする必要があることに注意してください。

于 2012-11-26T20:38:34.583 に答える