カンパ〜イ!←最初の1杯目、なに頼む?

はじめまして。

datetime型のインポートについて質問ですが、
datetime型にNULLをインポートしようとすると、
"キャストした文字コードが正しくありません。"。
のエラーが出力されてしまいます。

また、datetime型に何も入力していないデータをテキストへエクスポートし、そのテキストを再度インポートしても同様のエラーが出力されます。

何か解決方法がございましたらご教授願います。

A 回答 (2件)

データベースを右クリックして「タスク→データのインポート」ってやっているのですよね?


(そのデータインポートおよびエクスポートウィザードで、データソースにフラットファイルソース、変換先にSQL Serverを使用してインポートしているのだと思っていますが)

私が書いているのは、そのウィザードの設定画面の「詳細設定」画面の話です。
もし違う方法でインポートしているのであればどうやってインポートしているか教えて頂けますか?
    • good
    • 0

データソースの選択画面の、詳細設定では該当列のDataTypeが文字列[DT_STR]と認識されていると思いますので、それを日付[DT_DATE]に変更します。


そうするとエラーにはならなくなるはずです。
ただし、インポートした結果はNULLでなく、1899/12/30になります。

データインポートユーティリティも内部的にはSSISなのですが、SSIS側の方に変換したときにNULLを保持できないようです。
(つまり、仕様ってことでしょうか。DTSではこんなことなかったと思いますけど)
私は、あとでNULLにUPDATEするか、CSVならBULK INSERTを使っています。

この回答への補足

jamshid6様、回答有難うございます。

SqlServer Management Studioを使用しておりますが、
データ型に[DT_STR]はなく、datetimeとなっております。
(列のプロパティの全般にて設定)
Nullを許可も"はい"となっているのにエラーになってしまいます。

補足日時:2008/10/15 12:53
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


おすすめ情報