【发布时间】:2021-01-18 19:44:04
【问题描述】:
我有以下代码
String query = "INSERT INTO Product (ProductCode, Range, Type, Size, Description, Cost, Barcode) VALUE ('" + txbx_ProductCode.Text + "', '" + txbx_Range.Text + "','" +
txbx_Type.Text + "' , '" + txbx_Size.Text + "', '" + txbx_Description.Text + "' , '" + decimal.Parse(txbx_Cost.Text) + "' , '" + txbx_Barcode.Text + "')";
我在这一行得到以下 FormatException: FormatException Image
我怀疑我在解析 .text 时存在问题。我试过解析浮点数、双精度数、十进制和十进制。在所有情况下都是一样的。
输入的值介于 20000.00 和 100.00 之间,始终有 2 位小数,因此它们永远不会超过 smallmoney 值。
【问题讨论】:
-
拜托,拜托,拜托,为了所有神圣的爱,使用准备好的陈述。
-
@IanKemp 感谢您提出这个问题。从来没有人告诉过我,但我会开始将其作为标准。
-
小心 SQL 注入。使用准备好的语句。
cmd.Parameters.AddWithValue("@ProductCode", txbx_ProductCode.Text);
标签: c# sql sqldatatypes formatexception