夕日に向かって飛び出してみる……まぁとにかく、そんなだ<おい
某BULK INSERT処理ですが、現場での耐久テストに入ったものの、トラブル多し(><;
ユーザーがACCESSで取り込み用テキストファイルを作成→取り込み→エラー→なんでー?どーしてー?
調べてみたところ、年項目、数字整数4桁のところ、1988(正)→ファイルは1988.00 → BULKで取り込めない、でエラーになってた
http://msdn2.microsoft.com/ja-jp/library/ms188365(sql.90).aspx
文字列から 10 進数への型変換
SQL Server 2005 では、BULK INSERT で実行される文字列から 10 進数への型変換には、Transact-SQL の CONVERT 関数と同じ規則が適用されるので、科学的表記法を使用した数値を表す文字列は拒否されます。したがって、BULK INSERT を実行するときに、そのような文字列が無効な値として評価され、変換エラーが報告されます。
けれど、ユーザーにとって、ACCESS様が全て。ACCESS様がこうだ、と出力したデータが絶対に正しい(遠い目)
数字は数字~、日付や年やそんなものはどうでもいい~♪(かもめはかもめ~)
フォーマットファイルでfloatを型指定しておいて、実際にはint型へと暗黙キャストでロードする方向になりそうなんですが、それって誤差は本当に大丈夫なのか?
もうやだ、倍精度なんて、みんな星になっちゃぇぇっ(号泣)