1

Oracle データベースからデータを読み込もうとしています。問題は、受信データが数字の後にゼロを追加する場合があり、なぜこれが起こるのかわかりません?!?

たとえば、このようなデータを読みたい

1

1,1

1,12

1,123

Oracle-Datareader でそれを読むと、

1

1,10 <-

1,12

1,1230 <-

小数点以下の桁数が 1、3、5、7 になるたびに、結果に 0 が 1 つ追加されます。しかし、なぜこれが起こっているのですか?? この種の問題を知っている人はいますか?

編集:

Dim cmd As OracleCommand = New OracleCommand(Select_Statement, Connection)

Dim dr As OracleDataReader

dr = cmd.ExecuteReader


While dr.Read()

            If dr("C1").ToString = V1 Then

                Me.Txt_1.Text = dr.GetDecimal(3).ToString("G0")

                Me.Txt_2.Text = dr(c4)

                Me.Txt_3.Text = dr(c5)

                Me.Txt_4.Text = dr(c6)


            End If

            If dr("C2").ToString = V2 Then

                Me.Txt_5.Text = dr(c3)

                Me.Txt_6.Text = dr(c4)

                Me.Txt_7.Text = dr(c5)

                Me.Txt_8.Text = dr(c6)


            End If

        End While

dr.Close()

これは、データベースからデータを読み取る方法です。より良い方法があれば、いくつかのヒントをいただければ幸いです。dr.GetDecimal() を使用する方法は、行のインデックス付けの数値のみを除外するためです。

4

1 に答える 1

6

DB ではなく C# にあります。

ドキュメントから:

format が null または空の文字列の場合、このインスタンスの戻り値は、一般的な数値書式指定子 (G) で書式設定されます。

general format回避したいゼロが含まれています。
削除したい場合は、次のようにします。

string sd = dr.GetDecimal(0).ToString("G0");

dr は私の OracleDataReader です

于 2012-06-11T13:55:06.053 に答える