不允许从数据类型 nvarchar 到数据类型 money 的隐性转换

错误提示为:不允许从数据类型nvarchar到数据类型money的隐性转换(表'Northwind.dbo.Products',列'UnitPrice')。请使用CONV... 错误提示为:不允许从数据类型 nvarchar 到数据类型 money 的隐性转换(表 'Northwind.dbo.Products',列 'UnitPrice')。请使用 CONVERT 函数来运行此查询。
String sql = "insert into Products (ProductName,QuantityPerUnit,UnitPrice,UnitsInStock," +
"UnitsOnOrder,ReorderLevel,Discontinued,CategoryID) values (@ProductName,@QuantityPerUnit,@UnitPrice" +
",@UnitsInStock,@UnitsOnOrder,@ReorderLevel,@Discontinued,@CategoryID)";
SqlConnection cn = new SqlConnection(str);
SqlCommand cmd = new SqlCommand(sql,cn);
cn.Open();
SqlParameter[] p=new SqlParameter[8];
p[0] = new SqlParameter("@ProductName",TextBox2.Text);
p[1] = new SqlParameter("@QuantityPerUnit",TextBox3.Text);
p[2] = new SqlParameter("@UnitPrice",TextBox4.Text);
p[3] = new SqlParameter("@UnitsInStock",TextBox5.Text);
p[4] = new SqlParameter("@UnitsOnOrder",TextBox6.Text);
p[5] = new SqlParameter("@ReorderLevel",TextBox7.Text);
if (RadioButton1.Checked==true)
{
p[6] = new SqlParameter("@Discontinued",RadioButton1.Text);
}
else if (RadioButton2.Checked==true)
{
p[6] = new SqlParameter("@Discontinued",RadioButton2.Text);
}
p[7] = new SqlParameter("@CategoryID", TextBox9.Text);
cmd.Parameters.AddRange(p);
int w=cmd.ExecuteNonQuery();
if (w>=1)
{
Response.Redirect("Default.aspx");
}
else
{
Label1.Visible = true;
Label1.Text = "添加失败";
}
cn.Close();
cn.Dispose();

}
提示信息意思基本能看到懂但不知道应该使用 CONVERT 函数来运行此查询。还望指教。
展开
 我来答
noitlr
2009-07-27 · TA获得超过4141个赞
知道小有建树答主
回答量:1772
采纳率:0%
帮助的人:1467万
展开全部
p[2] = new SqlParameter("@UnitPrice",convert.toint32(TextBox4.Text));
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式