これは私が作成した最初の SSIS パッケージであるため、このテーマについての経験不足を許してください。目標は、基本的にスキーマ/データを Access DB から SQL Server にコピーすることです。BIDS のインポート/エクスポート ウィザードを使用して作成します (合計 470 のテーブルがあります)。1 つのテーブルのみを実行するようにスクリプトを作成すると、ジョブが実行されてパッケージが実行され、成功します。すべてのテーブルを試すと、次のエラーが表示されます。
ユーザーとして実行: DOMAIN\USER。Microsoft (R) SQL Server Execute Package Utility バージョン 10.50.2500.0 for 32 ビット Copyright (C) Microsoft Corporation 2010. All rights reserved. 開始: 11:47:53 AM エラー: 2012-07-16 11:48:03.65 コード: 0xC0202009 ソース: データ フロー タスク 1 宛先 - アカウント [55] 説明: SSIS エラー コード DTS_E_OLEDBERROR。OLE DB エラーが発生しました。エラー コード: 0x80040E37。OLE DB レコードが利用可能です。ソース: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80040E37 説明: "無効なオブジェクト名 'dbo.Account'.". 終了エラー エラー: 2012-07-16 11:48:03.65 コード: 0xC0202040 ソース: データ フロー タスク 1 宛先 - アカウント [55] 説明: "[dbo].[アカウント]" の fastload 行セットを開けませんでした。オブジェクトがデータベースに存在することを確認してください。終了エラー エラー: 2012-07-16 11:48:03.65 コード: 0xC004706B ソース: データ フロー タスク 1 SSIS.Pipeline 説明: "コンポーネント "Destination - Account" (55)" は検証に失敗し、検証ステータス "VS_ISBROKEN" を返しました。終了エラー エラー: 2012-07-16 11:48:03.65 コード: 0xC004700C ソース: データ フロー タスク 1 SSIS.Pipeline 説明: 1 つ以上のコンポーネントが検証に失敗しました。終了エラー エラー: 2012-07-16 11:48:03.65 コード: 0xC0024107 ソース: データ フロー タスク 1 説明: タスクの検証中にエラーが発生しました。終了エラー DTExec: パッケージの実行で DTSER_FAILURE (1) が返されました。開始: 午前 11:47:53 終了: 午前 11:48:03 経過: 10.562 秒。パッケージの実行に失敗しました。ステップは失敗しました。パイプラインの説明: "コンポーネント "Destination - Account" (55)" は検証に失敗し、検証ステータス "VS_ISBROKEN" を返しました。終了エラー エラー: 2012-07-16 11:48:03.65 コード: 0xC004700C ソース: データ フロー タスク 1 SSIS.Pipeline 説明: 1 つ以上のコンポーネントが検証に失敗しました。終了エラー エラー: 2012-07-16 11:48:03.65 コード: 0xC0024107 ソース: データ フロー タスク 1 説明: タスクの検証中にエラーが発生しました。終了エラー DTExec: パッケージの実行で DTSER_FAILURE (1) が返されました。開始: 午前 11:47:53 終了: 午前 11:48:03 経過: 10.562 秒。パッケージの実行に失敗しました。ステップは失敗しました。パイプラインの説明: "コンポーネント "Destination - Account" (55)" は検証に失敗し、検証ステータス "VS_ISBROKEN" を返しました。終了エラー エラー: 2012-07-16 11:48:03.65 コード: 0xC004700C ソース: データ フロー タスク 1 SSIS.Pipeline 説明: 1 つ以上のコンポーネントが検証に失敗しました。終了エラー エラー: 2012-07-16 11:48:03.65 コード: 0xC0024107 ソース: データ フロー タスク 1 説明: タスクの検証中にエラーが発生しました。終了エラー DTExec: パッケージの実行で DTSER_FAILURE (1) が返されました。開始: 午前 11:47:53 終了: 午前 11:48:03 経過: 10.562 秒。パッケージの実行に失敗しました。ステップは失敗しました。65 コード: 0xC004700C ソース: データ フロー タスク 1 SSIS.Pipeline 説明: 1 つ以上のコンポーネントが検証に失敗しました。終了エラー エラー: 2012-07-16 11:48:03.65 コード: 0xC0024107 ソース: データ フロー タスク 1 説明: タスクの検証中にエラーが発生しました。終了エラー DTExec: パッケージの実行で DTSER_FAILURE (1) が返されました。開始: 午前 11:47:53 終了: 午前 11:48:03 経過: 10.562 秒。パッケージの実行に失敗しました。ステップは失敗しました。65 コード: 0xC004700C ソース: データ フロー タスク 1 SSIS.Pipeline 説明: 1 つ以上のコンポーネントが検証に失敗しました。終了エラー エラー: 2012-07-16 11:48:03.65 コード: 0xC0024107 ソース: データ フロー タスク 1 説明: タスクの検証中にエラーが発生しました。終了エラー DTExec: パッケージの実行で DTSER_FAILURE (1) が返されました。開始: 午前 11:47:53 終了: 午前 11:48:03 経過: 10.562 秒。パッケージの実行に失敗しました。ステップは失敗しました。03 AM 経過: 10.562 秒。パッケージの実行に失敗しました。ステップは失敗しました。03 AM 経過: 10.562 秒。パッケージの実行に失敗しました。ステップは失敗しました。
ジョブの最初のステップでは、DB からすべてのテーブルを削除します。
EXEC sp_msforeachtable 'DROP TABLE ?'
2 番目のステップでは、パッケージを実行します。
私はオンラインでいろいろ調べましたが、解決策を見つけることができませんでした。どんな助けでも大歓迎です、ありがとう!