CSVデータをSQL Server にインポートしようとすると「エラー 0xc02020a1」になる

CSVデータをSQL Server インポートおよびエクスポートウィザードを使ってインポートしようとすると

エラー 0xc02020a1: データ フロー タスク 1: データ変換に失敗しました。列 “××××××” のデータ変換から、状態値 4 と状態を示すテキスト “テキストが切り捨てられたか、または対象になるコード ページで 1 つ以上の文字が一致しませんでした。” が返されました。
(SQL Server インポートおよびエクスポート ウィザード)

というエラーになることがある。

900b7323e28e5e2b59d672112ea1c59e

 

これはテーブルのフィールドの長さが足りないのではなく、データソース側の設定のデフォルトが50バイトになっていることが原因。

データソースの選択まで戻り、詳細設定で エラーが発生しているカラム(この例の場合はaddress列)のOutputColumnWidthの長さを調整します。

スクリーンショット_040815_042600_PM

Microsoft SQL Server Management Studio でテーブルデザインの変更を可能にする

Microsoft SQLServer Management studioからテーブルデザインを変更しようとすると、下のようなダイアログが表示されて保存できないときがあります。

SQLserver2012_1

この場合、メニューから ツール → オプションでオプションダイアログを開きます。

左のツリーにあるデザイナーをクリックし、右側の「テーブル オプション」から「テーブルの再作成を必要とする変更を保存できないようにする」のチェックを外します。

SQLServer2012