どのようにお金のデータ型に対して正しいMS SQLネイティブフォーマットを書くことbinarywriterを使用していますか?
-
05-09-2019 - |
質問
どのようにお金のデータ型に対して正しいMS SQLネイティブフォーマットを書くことbinarywriterを使用していますか?
私は、小数点量の文字列表現としてファイルから読み込んだ.NETの価値、利用したいと思います(SQLから実際にエクスポート「お金」のデータ型を、それは重要ではありません)。
どのように私はあなたが正常に値を読み取るためにネイティブフォーマットモードでBCPまたはBULK INSERTを使用できるように値を書き込むためにバイナリライターを使用することができますか?
解決
(wは以前にインスタンス化されたバイナリライタである)
Dim dec = CDec(aString)
Dim lng = CLng(dec * 10000)
Dim bytes = BitConverter.GetBytes(lng)
w.Write(bytes(4))
w.Write(bytes(5))
w.Write(bytes(6))
w.Write(bytes(7))
w.Write(bytes(0))
w.Write(bytes(1))
w.Write(bytes(2))
w.Write(bytes(3))
クリーナーまたはより良い方法があるかもしれませんが、これは、
OKのようです 、このフォーマットは唯一の非NULLマネーの列にあるヘッドアップとして、私はあなたが
NULL可能お金列の最初またはその効果に何かの長さのバイトを書くことがあると思います他のヒント
私はBCPで区切られたファイルに数値型にnull値を行う方法を覚えていませんが、私はあなたが長さ接頭辞ファイルを使用する場合は、-1の長さの値がnull値を表すと考えています。
所属していません StackOverflow