/ ソフトウエア開発部
Tweet
シェア
システム開発ブログ
最近の記事
- Chrome for Androidの新機能、Chrome to Mobileを試す
- ファイルサーバのBCP対策(アイロベックスの場合)
- Illustratorの矢印機能でラクラク矢印作成!
- システム会社選びのポイント
- システム保守の移管費用を抑えます
- アイロベックス通信発行してます
- ボタンのデザインをxmlで定義する
- Excel2010で行コピーをした場合に、画像ファイルのサイズが変わらないようにする
- Power Point2010 でスライド番号をつける方法
- Photoshop の秘宝
カテゴリー
- HTML全般 (2)
- Access (15)
- Android (5)
- .NET (14)
- Excel (9)
- Google Apps (5)
- HTML5 (3)
- iPhone (8)
- JAVA (14)
- Linux (7)
- Movable Type (15)
- MySQL (7)
- OpenOffice (10)
- Oracle (6)
- PHP (20)
- SQLServer (4)
- twitter (6)
- VBA (11)
- Webサイト構築・Web戦略 (32)
- Webサイト構築事例 (4)
- Windows (10)
- その他 (29)
- アクセス解析 (2)
- ウィジェット (1)
- システム設計 (5)
- システム開発事例 (3)
- システム開発体制 (1)
- セキュリティ (5)
- データベース (20)
- プロジェクト管理 (8)
- 品質管理・テスト (6)
- 帳票 (3)
- 技術活用 (6)
- 運用・保守 (8)
部署
- システム開発事業部 (33)
- ビジネスソリューション課 (17)
- システムソリューション事業部 (32)
- 流通システム部 (76)
- 産業システム部 (93)
- ソフトウエア開発部 (56)
- Webコンサルティング部 (97)
- 企画開発部 (37)
- 部長インタビュー (3)
月別アーカイブ
- 2012年2月 (6)
- 2012年1月 (18)
- 2011年12月 (19)
- 2011年11月 (22)
- 2011年10月 (29)
- 2011年9月 (28)
- 2011年8月 (5)
- 2011年7月 (18)
- 2011年6月 (15)
- 2011年5月 (21)
- 2011年4月 (8)
- 2011年3月 (12)
- 2011年2月 (12)
- 2011年1月 (13)
- 2010年12月 (18)
- 2010年11月 (19)
- 2010年10月 (19)
- 2010年9月 (21)
- 2010年8月 (17)
- 2010年7月 (21)
- 2010年6月 (22)
- 2010年5月 (14)
- 2010年4月 (12)
- 2010年3月 (13)
- 2010年2月 (9)
- 2010年1月 (12)
- 2009年12月 (7)
- 2009年11月 (6)
- 2009年10月 (8)
- 2009年9月 (7)
- 2009年8月 (3)
- 2009年7月 (1)
- 2009年6月 (3)
- 2009年5月 (1)
- 2009年4月 (1)
- 2009年3月 (8)
- 2009年2月 (10)
- 2009年1月 (1)
- 2008年12月 (1)






ソフトウエア開発部 / データベース
以前、csvファイルのデータをSQL Serverへ取り込む必要があり、
BCPコマンドを利用する機会がありました。
その時はフォーマットファイルを用いてcsvファイルの取り込みを行ったのですが、
ダブルクォーテーションで囲まれたデータの取り込みが思うようにいかずに苦労しました。
例として、次のようなサンプルデータを考えます。
"1","東京都","5940"
"2","大阪府","4660"
"3","京都府","570"
●区切り文字をカンマとした場合
9.0
3
1 SQLCHAR 0 255 "," 1 id Japanese_CI_AS
2 SQLCHAR 0 255 "," 2 name Japanese_CI_AS
3 SQLCHAR 0 255 "\r\n" 3 dens Japanese_CI_AS
取り込みを行った結果がこちらです。
id name dens
-------------------------
"1" "東京都" "5940"
"2" "大阪府" "4660"
"3" "京都府" "570"
このままでは、ダブルクォーテーションまで一緒に取り込まれており、
処理を行う際に邪魔になります。
対処法の一つとして、SQL Server上で取り除く処理を行う事が考えられますが、
余計な手順が増え、あまり望ましくありません。
しかし、フォーマットファイルの内容を工夫することで、
インポートを行う際にダブルクォーテーションを取り除いて取り込む事が出来ます。
-----手順-----
1.先頭のダブルクォーテーションを取り除くために、ダミーとなる列を仮定します。
先頭にデータの入っていない列があると考え、区切り文字として「"」を指定します。
2.二列目以降の区切り文字に、ダブルクォーテーションを含めた「","」を指定します。
3.最後に、最終列の区切り文字を「"\r\n」とすれば、修正は完了です。
--------------
●修正後
9.0
4
1 SQLCHAR 0 0 "\"" 0 dummy Japanese_CI_AS
2 SQLCHAR 0 255 "\",\"" 1 id Japanese_CI_AS
3 SQLCHAR 0 255 "\",\"" 2 name Japanese_CI_AS
4 SQLCHAR 0 255 "\"\r\n" 3 dens Japanese_CI_AS
再度取り込みを行った結果はこのようになります。
id name dens
-------------------------
1 東京都 5940
2 大阪府 4660
3 京都府 570
このように、区切り文字指定を工夫する事で求めるデータだけを取り出すことが可能です。
「システム開発ブログ」へのコメントやご意見等ありましたら、ファンページまでお願いします。 Facebook のファンページ
他社のシステムも直します。資産を活かしてシステムリフォーム