この回答は遅れていますが、.rptファイル形式を開いてSQLテーブルに書き込むという問題に対する正規の回答は見つかりませんでした。
-
オブジェクトエクスプローラーのSQLServerManagement Studioで、ファイルをロードするデータベースを右クリックし、[タスク...データのインポート]を選択します。
-
Flat File Sourceを選択し、ファイルを選択してから、画面が次のスクリーンショットと一致するように設定されていることを確認します(コードページ=65001 UTF-8、フォーマット=右の不規則、最初のデータ行の列名)。次に、[次へ]をクリックします。
- 各列の最初の文字をクリックして(クリックする場所については、下のスクリーンショットの黄色のハイライトを参照)、適切な場所に列を挿入します。
- 左側の[詳細設定]タブをクリックします。各列名に目を通し、列名の末尾からスペースを削除します。必要に応じてデータ型を修正してください。警告「(NNNの影響を受ける行)」ファイルフッターのため、最初の数列は文字列である必要がある場合があります。
- 左側の[プレビュー]タブに移動し、[スキップするデータ行]を1に変更して、[更新]をクリックします。
- [次へ]ボタンをクリックして、SQLデータベースへの接続を設定します。
-
[次へ]をクリックして、テーブルの名前を
[dbo].[MyTable]
の形式で入力します 次に、[マッピングの編集]をクリックして、列のデータ型が一致することを確認します。ここでは、文字列(DT_STR)列はvarchar列である必要があります。ここでは、Unicode文字列(DT_WSTR)をnvarchar列にする必要があります。 -
[次へ]と[完了]をクリックして、すぐに実行します。うまくいけば、エラーではなく成功メッセージが表示されるはずです:
- 「(影響を受けるNNN行)」(NNNはファイルの行数)というフッターがあります。宛先SQLテーブルを照会してその行を見つけ、削除します。
select * from MyTable where MyColumn1 like '%(%'
その行を見つけるのに役立つかもしれません。削除する前に、クエリが1行だけを返すことを確認してください。