vs2005中数据库插入记录的问题

来源:百度知道 编辑:UC知道 时间:2024/06/19 20:23:15
使用GridView控件绑定数据库后,需要插入记录,我添加了一个按钮,编程如下:
SqlDataSource1.InsertParameters.Clear();
SqlDataSource1.InsertParameters.Add("ProductID", TextBox1 .Text );
SqlDataSource1.InsertParameters.Add("ProductName", TextBox2 .Text );
SqlDataSource1.InsertParameters.Add("CategoryID", TextBox3 .Text );
SqlDataSource1.InsertParameters.Add("QuantityPerUnit", TextBox4 .Text );
SqlDataSource1.InsertParameters.Add("UnitPrice", TextBox5 .Text );
SqlDataSource1.Insert();
由于倒数第二条语句中的“UnitPrice”字段的数据类型是Decimal,InsertParameters.Add()好象只能插入字符,所以插入无法实现。请问高手如何解决?
将词句改成了
SqlDataSource1.InsertParameters.Add("UnitPrice", Decimal.Parse(TextBox5 .Text.Trim()));
还是出现错误:
错误1 与“System.Web.UI.WebControls.ParameterCollection.Add(string, string)”最匹配的重载方法具有一些无效参数
错误2 参数“2”: 无法从“decimal”转换为“string”
好象add方法只能用字符类型和整型,再请指点。

SqlDataSource1.InsertParameters.Add("UnitPrice", Decimal.Parse(TextBox5 .Text.Trim()));

得保证你输入的是个数字 不然会报错

忽略了~
Sql里的变量必须以@开头的
SqlDataSource1.InsertParameters.Add("@UnitPrice", Decimal.Parse(TextBox5 .Text.Trim()));
同时你Sql语句里的变量也要使用@开头