1

私の前任者は 2007 年に Access データベースを作成しました。このデータベースには、多数のテーブル、フォーム、およびクエリが含まれています。

テーブルの 1 つは、添付ファイルとして保存されるイメージを保持します。

データベースのサイズはほぼ 2GB です (圧縮と修復を行ってもサイズは変わりません)。そこで、SQL Server 2014 データベースに変換したいと思います。

テーブルとデータを SQL Server にコピーしたデータ インポート ツールを使用しました。ただし、添付ファイルはファイル名の文字列に変換されるだけです ( image1.jpg)

MS Access データベースから SQL Server にイメージをインポートする方法はありますか?

Sharepoint 2010 サーバーも持っていますが、これはより良いオプションでしょうか?

更新 (スタック オーバーフローの初心者で申し訳ありません。何をどこに置くべきかわかりません)

インポート ウィザードのフィールド マッピングを IMAGE に変更しましたが、次のエラーが表示されます。無視するように設定すると、フィールドは空白になります。VARSTRING を使用して、フィールドに Null または 0x を入力します。

  • 実行中 (エラー) メッセージ エラー 0xc02020c5: データ フロー タスク 1: 列 "写真" (23) を列 "写真" (57) に変換中にデータ変換に失敗しました。変換により、ステータス値 2 とステータス テキスト「データが失われる可能性があるため、値を変換できませんでした。」が返されました。(SQL Server インポートおよびエクスポート ウィザード)

エラー 0xc0209029: データ フロー タスク 1: SSIS エラー コード DTS_E_INDUCEDTRANSFORMFAILUREONERROR。「Data Conversion 0 - 0.Outputs[Data Conversion Output].Columns[Photos]」は、エラー コード 0xC020907F が発生したため失敗し、「Data Conversion 0 - 0.Outputs[Data Conversion Output].Columns[Photos] のエラー行の配置が失敗しました。 ]" エラー時の失敗を指定します。指定されたコンポーネントの指定されたオブジェクトでエラーが発生しました。これより前に、失敗に関する詳細情報を含むエラー メッセージが投稿される場合があります。(SQL Server インポートおよびエクスポート ウィザード)

エラー 0xc0047022: データ フロー タスク 1: SSIS エラー コード DTS_E_PROCESSINPUTFAILED. コンポーネント "Data Conversion 0 - 0" (49) の ProcessInput メソッドは、入力 "Data Conversion Input" (50) の処理中にエラー コード 0xC0209029 で失敗しました。識別されたコンポーネントが ProcessInput メソッドからエラーを返しました。エラーはコンポーネントに固有のものですが、エラーは致命的であり、データ フロー タスクの実行が停止します。これより前に、失敗に関する詳細情報を含むエラー メッセージが投稿される場合があります。(SQL Server インポートおよびエクスポート ウィザード) エラー 0xc02020c4: データ フロー タスク 1: データ フロー タスク バッファーに行を追加しようとして、エラー コード 0xC0047020 で失敗しました。(SQL Server インポートおよびエクスポート ウィザード) エラー 0xc0047038: データ フロー タスク 1: SSIS エラー コード DTS_E_PRIMEOUTPUTFAILED. Source - Attachments の PrimeOutput メソッドがエラー コード 0xC02020C4 を返しました。パイプライン エンジンが PrimeOutput() を呼び出したときに、コンポーネントがエラー コードを返しました。エラー コードの意味はコンポーネントによって定義されますが、エラーは致命的であり、パイプラインは実行を停止しました。これより前に、失敗に関する詳細情報を含むエラー メッセージが投稿される場合があります。(SQL Server インポートおよびエクスポート ウィザード)

4

1 に答える 1

0

SQL Server を使用してデータをインポートしましたが、これは良いことです。画像を保持する列には、おそらくデータ型 IMAGE を使用します。データ タイプ VARBINARY(MAX) を試すこともできます。インポートおよびエクスポート ウィザードを使用してデータをインポートし、どのデータ型が機能するかを確認します。

これがお役に立てば幸いです。

編集:添付ファイルテーブルを変換すると、画像の名前しかないと言います。これらの名前は画像に関連していますか。画像がまだある場合は、それらをフォルダーに保存し、FILESTREAM を使用して SQL Server を使用して thme に接続できます。FILESTREAM を使用すると、画像のデータがデータベースに保存されなくなり、画像への参照のみが保存されるため、データベースが強化されます。

残念ながら、SQL Server は複数値またはアタッチメントのようなフィールドをサポートしていません。FILESTREAM の詳細については、次の Web サイトを参照してください: http://msdn.microsoft.com/library/hh461480

于 2014-07-29T06:34:14.257 に答える