2009-08-04 11 views
0

bcp関数(bcp_sendrow/bindなど)を使用してdatetime列を持つ表に挿入しようとすると、「無効な時刻形式」に問題があります。例えば、私はDBDATETIME構造体を実装しました。例えば、2009年3月3日にlocaltimeの8amにデータを格納したい場合は、構造体のメンバーを次のように設定します。sql server 2008:bcp_sendrow、問題:無効な時刻形式

dtdays = 40026真夜中以降19000101)及び dttime =2880万(NUMのミリ秒)

(またVARを結合した。SQLDATETIMEとして) dttime 7桁広い(以下の場合)、次いで、BCP suceeds(しかし、明らかに間違った時間に値(日付部分は大丈夫です)

どうすればこの問題を解決できますか?私はdatetime2/timeなどを試しましたが、何も助けませんでした。 助けてください、すべてのアドバイス/アイデアは大変感謝しています。 (私はSQL Server 2008と(ODBC)SQLネイティブクライアント10.0を使用しています)

ありがとう!

答えて

0

気にしないで...あなたはあなたを表現するために最も近い値を取得そのよう ...それが最終的に(ソートの) -DBDATETIME :: dttime(日の開始以来、millisecsのnumが)3.333333で分割する必要がありました時間。 (フィールド幅はわずか7桁です)。これはおそらくdatetime型が1/3秒を表すことができるということと関係しています。正確に.... とにかく、私はODBC bcp apiでdatetime2を使ってみましたが、時間の部分作業をすることができませんでした 誰かがより良い方法を見つけたら教えてください ありがとう!

関連する問題