SQL的update问题,程序不报错但是运行后数据没有变化,求前辈指教。
stringstr1="update[payofftable]set[income]='"+income+"'where[time]=";str1=str1+DateTi...
string str1 = "update [payofftable] set [income]='" + income + "'where [time]=";
str1 = str1 + DateTime.Now.Date.ToString("yyyy-M-d");
OleDbCommand cm1 = new OleDbCommand(str1, con);
cm1.ExecuteNonQuery()
我用select语句查过是可以查到有日期为DateTime.Now.Date.ToString("yyyy-M-d")的一行的,但是为什么这里改不了呢? 展开
str1 = str1 + DateTime.Now.Date.ToString("yyyy-M-d");
OleDbCommand cm1 = new OleDbCommand(str1, con);
cm1.ExecuteNonQuery()
我用select语句查过是可以查到有日期为DateTime.Now.Date.ToString("yyyy-M-d")的一行的,但是为什么这里改不了呢? 展开
3个回答
2013-05-15
展开全部
目测可能是少加了个单引号
假设是今天执行的, income = 123 你的 实际执行的语句为:
update [payofftable] set [income]='123' where [time]= 2013-5-15
后面那个 2013-5-15 最后会被按照 int 类型来处理, 变成 2013 减5 减15
正确的写法应该为
update [payofftable] set [income]='123' where [time]= '2013-5-15'
假设是今天执行的, income = 123 你的 实际执行的语句为:
update [payofftable] set [income]='123' where [time]= 2013-5-15
后面那个 2013-5-15 最后会被按照 int 类型来处理, 变成 2013 减5 减15
正确的写法应该为
update [payofftable] set [income]='123' where [time]= '2013-5-15'
展开全部
string str1 = "update payofftable set income='" & income & "'where time=";
str1 = str1 + DateTime.Now.Date.ToString("yyyy-M-d");
1、你把+改成&,
2、去掉[]。
str1 = str1 + DateTime.Now.Date.ToString("yyyy-M-d");
1、你把+改成&,
2、去掉[]。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询