2012-01-05 5 views
1

テーブルに列名が含まれている場合、テキストファイルからデータベースにテーブルをインポートするにはどうすればよいですか?SQL Server 2008 R2:列名に/が含まれている場合、テキストファイルからテーブルをインポート

名前に/の列を持つSQL Server 2008 R2テーブルがあります。 (SAPデータベース) 例:/ BIC/FIC_SD001には/ BIC/O_CST_00という列があります

このテーブルのインポート/エクスポートウィザードを使用してテキストファイルにエクスポートしましたが、スラッシュがあります。

ウィザードを使用してテーブルを別のデータベースにインポートすると、その列のすべてが削除され、スペースで置き換えられます。 上記の列は次のようになります。BIC 0_CST_00

ありがとうございました!ウィザードのステップ

答えて

1

[ソース表とビューと呼ばれる、あなたは編集マッピングをクリックする必要があります...あそこ手動で送信先カラム名(不足しているスラッシュをバック設定)を変更することができます。

+0

あなたは正常ですが、このようなテーブルあたり約40列のテーブルが20あります。私はより具体的な質問になっていたはずですが、これを行うためのスクリプト/自動の方法を知っていますか? –

+0

いいえ、私は自動解決策は考えられません。実際、これは明らかにバグであり、マイクロソフトと直接話し合うべきだと思います。 – olmed0

1

BCPユーティリティを使用して、SQL Serverからテキストファイルまたはその逆にデータをインポートまたはエクスポートすることができます。次のように

BCP Database.TableName out "Location of the text file " -c -S ServerName -T 

上記のコマンドは、コマンドがあるSQLサーバーにフラット・ファイルからデータをロードするには、フラットファイル

にSQL Serverテーブルからデータをロードする: -

BCP Database.TableName in "Location of the text file " -c -S ServerName -T 

上記の2つのコマンドはWindows認証で動作します

+0

私はBCP bwq./BIC/FIC_SD001を "c:¥temp¥sd001" -c -S -TとBCP bwq "/ BIC/FIC_SD001" out "c:\ temp \ sd001" -c -S -T。両方ともエラーが発生しています。コマンドラインの処理中にエラーが発生しました。 P.S.

+0

サーバーとの信頼できる接続がある場合は、-Sフラグを削除できます。それ以外の場合は、空白なしで-S を試してください。例:-Smyserver – olmed0

+0

Windows認証を持つAdventure WorkデータベースのBCP出力コマンドの例は、次のとおりです。BCP AdventureWorksLT.SalesLT.Address out "C:\ temp \ sd001" -c -S CBR-DEL1156 \ SQL2005 -Tあなたがデータベース、スキーマ、テーブル名を正しく書いていないと、そのエラーが出る – praveen

関連する問題