1

次の double 値を SQL Server に格納する必要があります。

double x = 52.22105994970536;

この型の値を格納するには、どの SQL Server データ型を使用する必要がありますか。おそらくdecimalまたはfloat

これが関連しているかどうかはわかりませんが、値の小数部分を区切るために、これらの値を.notで保存する必要があります。,これを確実に行うために知っておくべき SQL Server の設定はありますか?

4

2 に答える 2

1

これが適切かどうかはわかりませんが、これらの値を。で保存する必要があります。ではなく、値の小数部分を分離します。これを確実に行うために知っておくべきSQLServerの設定はありますか?

いいえ、これはまったく問題ではないことに気付くまでプログラミングを学ぶだけで十分です。小数は小数として保存されます。「。」または「、」は、値を出力するための視覚的変換(つまり、「ToString」呼び出し)の一部であり、値とは関係ありません。

ダブルを保存したい場合は、ダブルを保存したいと思います。点。プログラムに「。」が表示されていることを確認する場合は、UIを適切にプログラムしますが、SQLServerの内部ストレージを気にしないでください。通常、それらはロケールで表示されます。これは、ほとんどの場合、ハードコーディングよりも賢明です。だから、UIロケールを強制的に変更するかもしれませんか?または、値を出力するたびに適用するように変換をハードコーディングします。

このタイプの値を格納するために使用するSQLServerデータ型。おそらく10進数または浮動小数点ですか?

http://msdn.microsoft.com/en-us/library/ms187752.aspx

SQLサーバーのデータ型について説明します。

要件に合ったものを選択してください。与えられた精度のフロートバージョンの可能性があります。さて、それらが「近似数値」と名付けられているために恐れている場合は、doubleは近似数値であり、C#(または使用する他のフロントエンド言語-あなたは教えてくれません)でもあることに注意してください。

デフォルトの推奨マッピングはhttp://msdn.microsoft.com/en-us/library/ms131092.aspxにあり、「フロート」を指します。

于 2012-07-09T11:02:02.923 に答える
0

Damien_The_Unbelieverが述べたように、フォーマットは(無関係である必要があります)、表示、レポートなどのために行うものです。

浮動小数点と固定小数点(10進数)のどちらを使用するかについては、アクセスに使用している言語が10進数型である場合、decimalは多くの問題を解決します。数値をdoubleとして操作している場合は、浮動小数点表現に固有の不正確さに手動で対処するため、バックエンドで10進数を使用してもそれほど多くは得られません。

于 2012-07-09T11:00:47.043 に答える