SQL Serverインストールからのユーザー入力データの大きなテキストフィールドを含む75,000行のテーブルをエクスポートするのに2日間を費やしました。このデータには、プレーンなASCII文字、タブ、および改行がすべて含まれています。私はすべてのフィールドが引用され、引用された列内の引用符が適切にエスケープされている( "")CSVをエクスポートする必要があります。SQL Server ExpressからCSVへデータをエクスポートする(引用とエスケープが必要)
これまでに試したことは次のとおりです。 - Management Studioからデータベースを右クリックしてExcelにエクスポートすると、フィールドが長すぎるため失敗します。 - フラットテキストの区切りとコンマ分離」を持つファイルへのManagement Studioからデータのエクスポート - 。完全に役に立たない、完全にあいまいなファイルを作成するフィールド内の引用符をエスケープしません - コマンドラインからBCP - 。また、引用フィールドをサポートしていません
FasterCSV rubyライブラリでインポートする必要があります。引用符区切り文字が非標準ASCII文字または複数の文字になることは許可されていません。また引用符で囲まれていない列では\ nまたは\ rは使用できません。
助けを歓迎します。
あなただけのRubyプログラムからSQL Serverに接続し、輸出をスキップすることができます/インポートステップですか? Ruby-DBIパッケージを使用してselect *に接続し、必要に応じて引用するだけです。 – Doon
@Doonを調べる価値があります。 Rubyで接続して結果を得ることができたら、FasterCSVを使用して有効なCSVをエクスポートすることができます。 SQLサーバへのリモート接続を許可しない厳密な権限を持つマシンで作業しているので、外部クライアントから接続できません。 –
SQL Server 2012を使用している場合、この問題が発生する可能性があります。https://connect.microsoft.com/SQLServer/feedback/details/735714 – andrej351