1

我有一个存储过程,它计算我的 decimal(18,1) 数据类型值。我想把它放在我的 vb.net 程序的文本框中,通过

Dim conn As New SqlConnection("Data Source=a\SQLEXPRESS;Initial Catalog=b;Integrated Security=TRUE")
Dim cmd As SqlCommand = New SqlCommand("dbo.c", conn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add("@d", SqlDbType.Decimal)
cmd.Parameters(@d").Direction = ParameterDirection.Output

我认为设置 SqlDbType.Decimal 会给我的文本框中的小数,它不起作用我只得到一个整数(我的数据库中的原始值为 2.5,我的文本框中的值为 3)。

在我寻找解决方案的过程中,如果发现这个

Dim parameter As New SqlParameter("@Price", SqlDbType.Decimal)
With parameter
.Value = 3.1416
.Precision = 8
.Scale = 4
End With

但我不能应用这个,因为我有一个输出参数。我用我的参数切换了“@price”,但除了“Label1”之外什么都没有显示。我真的需要在我的文本框中显示我的小数点并且需要帮助。

4

1 回答 1

1

我刚刚找到了答案。我将 SqlDbType.decimal 更改为 SqlDbType.Float 并且它可以工作。

于 2013-07-12T09:42:07.827 回答