[解決済み] CSVファイルをインポートする際、各カラムにvarchar(MAX)が使用されているにもかかわらず、SQL Serverでエラーが発生する。
質問内容
大きなCSVファイル(数ギガ)を
SQL Server
に挿入しようとしているのですが、一旦
Import Wizard
を通過し、最後にファイルをインポートしようとすると、次のようなエラーレポートが表示されます。
- 実行中 (エラー) メッセージ
エラー 0xc02020a1: データフロータスク 1: データ変換に失敗しました。列のデータ 列 ""Title"のデータ変換は、ステータス値4とステータス text "テキストが切り捨てられたか、または1つ以上の文字がターゲットコードページで一致しませんでした。 ターゲット コード ページに一致しない文字があります。
(
SQL Server Import and Export Wizard
)
エラー 0xc020902a: データフロータスク1: ソース Train_csv.Outputs[Flat File Source Output].Columns["Title"]" は失敗しました。 は、切り捨てが発生し、切り捨ての行の処分が の切り捨て行の処分が失敗しました。 は切り捨ての失敗を指定します。指定されたコンポーネントの指定されたオブジェクトで、切り捨てエラーが発生しました。 指定されたコンポーネントの指定されたオブジェクトで切り捨てエラーが発生しました。
(
SQL Server Import and Export Wizard
)
エラー 0xc0202092 です。データフロータスク1: を処理中にエラーが発生しました。 ファイル "C:³³.csv"を処理中にエラーが発生しました。
(
SQL Server Import and Export Wizard
)
エラー 0xc0047038: データ フロー タスク 1: SSIS エラー コード dts_e_primeoutputfailed. ソース - Train_csv の PrimeOutput メソッドはエラーコード 0xC0202092 を返しました。 はエラーコード 0xC0202092 を返しました。 このコンポーネントは失敗コードを返しました。 コンポーネントは、パイプラインエンジンが PrimeOutput() を呼び出したときに、失敗コードを返しました。この失敗コードの意味は 失敗コードの意味はコンポーネントによって定義されていますが、このエラーは致命的で、パイプラインは実行を停止しました。 パイプラインは実行を停止しました。 この前にエラーメッセージが投稿されることがあります。 の前に、失敗に関する詳細な情報を含むエラーメッセージが投稿されるかもしれません。
(
SQL Server Import and Export Wizard
)
私は最初にファイルを挿入するテーブルを作成し、各カラムはvarchar(MAX)を保持するように設定しましたので、私はまだこの切り捨ての問題があることを理解していません。私は何を間違えているのでしょうか?
どのように解決するのですか?
SQL Server のインポートおよびエクスポート ウィザードでは、ソース データ タイプを
Advanced
タブでソースのデータ型を調整できます (これらは、新しいテーブルを作成する場合は出力のデータ型になりますが、それ以外の場合はソース データを処理するために使用されるだけです)。
データ型はMS SQLのものとは厄介なほど異なっており、代わりに
VARCHAR(255)
ではなく
DT_STR
で、出力列の幅は
255
. については
VARCHAR(MAX)
は
DT_TEXT
.
そこで、データソースの選択で
Advanced
タブで、問題のあるカラムのデータ型を
DT_STR
から
DT_TEXT
(に変更します(複数の列を選択して、一度に変更することも可能です)。
関連
-
SQLラーニングノート--オペランドには1つのカラムが必要です。
-
[解決済み] ストアドプロシージャ 'dbo.aspnet_CheckSchemaVersion' が見つかりませんでした。
-
[解決済み] PostgreSQLのCREATE DATABASE IF NOT EXISTSをシミュレートしてみませんか?
-
[解決済み] 複数の列でgroup byを使用する
-
[解決済み] PostgreSQLからのPL/pgSQL出力をCSVファイルに保存する
-
[解決済み] SQL Serverにおける関数とストアドプロシージャの比較
-
[解決済み] MySQLでFULL OUTER JOINを行うにはどうすればよいですか?
-
[解決済み] 複数の列に対してSELECT DISTINCTする方法(またはできる方法)は?
-
[解決済み] SQL/mysql - Select distinct/UNIQUE but return all column?
-
[解決済み] SQL Serverで、ある日付より大きいすべての日付を照会するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
ERROR 1136 (21S01) を解決してください。列の数が Mysql の行 1 の値の数と一致しません。
-
[解決済み] SQL Serverで実行中の合計を計算する
-
[解決済み] 1つのPostgreSQLクエリで複数のWITHステートメントを使用するには?
-
[解決済み] SQLのSELECTでIF...THENを実行するにはどうすればよいですか?
-
[解決済み] ATTACHで開いたSQLiteデータベースファイルのテーブルを一覧表示するにはどうすればよいですか?
-
[解決済み] JOINとINNER JOINの違いについて
-
[解決済み] 各グループの最後のレコードを取得する - MySQL
-
[解決済み] INNER JOIN ON vs WHERE句
-
[解決済み] 複数の列に対してSELECT DISTINCTする方法(またはできる方法)は?
-
[解決済み] Selectステートメントで特定のフィールドの重複を検索する