c# .net 插入money类型数据
我是想把文本框里的价格插入到Sql的表中,但字段的类型是money这是我输入的代码:StringcmdText2=@"INSERTINTOstocktable(gid,c...
我是想把文本框里的价格插入到Sql的表中,但字段的类型是money
这是我输入的代码:
String cmdText2 = @"INSERT INTO stocktable(gid,color,sn,price,remark)VALUES( @gid,@color,@sn,@price,@time,@remark)";
SqlConnection connection1 = new SqlConnection(connStr);
cmd.CommandText = cmdText2;
cmd.Connection = connection1;
cmd.Parameters.AddWithValue("@gid", gid);
cmd.Parameters.AddWithValue("@color", this.Txtcolor.Text);
cmd.Parameters.AddWithValue("@sn", this.Txtsn.Text);
cmd.Parameters.AddWithValue("@price", this.Txtprice.Text);
cmd.Parameters.AddWithValue("@time", this.Txttime.Text);
cmd.Parameters.AddWithValue("@remark", this.Txtremark.Text);
try
{
connection1.Open();
cmd.ExecuteNonQuery();
//这里我就不用定义变量接收反回的行数了,你要用的时候自己加一下就可以了
}
finally
{
connection1.Close();
connection1.Dispose();
cmd.Dispose();
}
就是@price (Sql中是使用money类型)的和 @time (Sql中是使用datatime类型) 这两个加不进去
烦请高手帮忙修改一下,跪谢!
String cmdText2 = @"INSERT INTO stocktable(gid,color,sn,price,in_time,remark)VALUES( @gid,@color,@sn,@price,@time,@remark)"
也是不行。
提示是:不允许从数据类型 nvarchar 到数据类型 money 的隐性转换 展开
这是我输入的代码:
String cmdText2 = @"INSERT INTO stocktable(gid,color,sn,price,remark)VALUES( @gid,@color,@sn,@price,@time,@remark)";
SqlConnection connection1 = new SqlConnection(connStr);
cmd.CommandText = cmdText2;
cmd.Connection = connection1;
cmd.Parameters.AddWithValue("@gid", gid);
cmd.Parameters.AddWithValue("@color", this.Txtcolor.Text);
cmd.Parameters.AddWithValue("@sn", this.Txtsn.Text);
cmd.Parameters.AddWithValue("@price", this.Txtprice.Text);
cmd.Parameters.AddWithValue("@time", this.Txttime.Text);
cmd.Parameters.AddWithValue("@remark", this.Txtremark.Text);
try
{
connection1.Open();
cmd.ExecuteNonQuery();
//这里我就不用定义变量接收反回的行数了,你要用的时候自己加一下就可以了
}
finally
{
connection1.Close();
connection1.Dispose();
cmd.Dispose();
}
就是@price (Sql中是使用money类型)的和 @time (Sql中是使用datatime类型) 这两个加不进去
烦请高手帮忙修改一下,跪谢!
String cmdText2 = @"INSERT INTO stocktable(gid,color,sn,price,in_time,remark)VALUES( @gid,@color,@sn,@price,@time,@remark)"
也是不行。
提示是:不允许从数据类型 nvarchar 到数据类型 money 的隐性转换 展开
展开全部
你的@time没有接收的字段啊。。。
datetime类型插入的时候加' '(单引号),作为字符串插入.
插入的类型是字符串的,加' '(单引号)
cmd.Parameters.AddWithValue("@price", this.Txtprice.Text);
cmd.Parameters.AddWithValue("@time", this.Txttime.Text);
改成:
cmd.Parameters.AddWithValue("@price", Convert.ToDouble(this.Txtprice.Text));
cmd.Parameters.AddWithValue("@time", Convert.ToDateTime(this.Txttime.Text));
datetime类型插入的时候加' '(单引号),作为字符串插入.
插入的类型是字符串的,加' '(单引号)
cmd.Parameters.AddWithValue("@price", this.Txtprice.Text);
cmd.Parameters.AddWithValue("@time", this.Txttime.Text);
改成:
cmd.Parameters.AddWithValue("@price", Convert.ToDouble(this.Txtprice.Text));
cmd.Parameters.AddWithValue("@time", Convert.ToDateTime(this.Txttime.Text));
展开全部
String cmdText2 = @"INSERT INTO stocktable(gid,color,sn,price,remark)VALUES( @gid,@color,@sn,@price,@time,@remark)";
字段有5个,参数却有6个。。
字段有5个,参数却有6个。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
money类型你可以转换为声明其他的类型,比如字符串类型,这样也不会影响到数据库里数据的这个money类型。至于DateTime类型你可以让其值等于DateTime.Now(),也先把它赋值给一个变量,然后再进行调用。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我不知道你的查询语句是否有欠缺参数之类的,我只回答你如何插入数据类型为money类型的数据
你可以用double.Parse(this.Txtprice.Text);或者decimal.Parse(this.Txtprice.Text);强制转换一下试试。
如果怕输入的this.Txtprice.Text不是数字字符串,还可以用double.TryParse(this.Txtprice.Text,out a);或者decimal.TryParse(this.Txtprice.Text,out a); a要先声明类型哦!
你可以用double.Parse(this.Txtprice.Text);或者decimal.Parse(this.Txtprice.Text);强制转换一下试试。
如果怕输入的this.Txtprice.Text不是数字字符串,还可以用double.TryParse(this.Txtprice.Text,out a);或者decimal.TryParse(this.Txtprice.Text,out a); a要先声明类型哦!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询