C# 执行update语句为何出错
C# 执行update语句为何出错?在线等
需要用C#执行一条语句,将数据库中字段message的值中含有网址A的替换为网址B
但是总是出错,不知道什么原因
我把单独的语句拿出来
放到服务器执行是可以的。
单独放到服务器执行的语句
[SQL] UPDATE xhaitao_forum_post SET message=REPLACE(message,'http://haitao.smzdm.com/go_ht/270133/8','http://xxxxx.com/xxxxxx') WHERE pid =4
受影响的行: 0
时间: 0.000s
------解决方案--------------------
GetScalar这个函数写的什么?
------解决方案--------------------
执行updateset用ExecuteNonQuery()这个。。
------解决方案--------------------
把message_sql输出看看
应该错在pid 上边
------解决方案--------------------
你的这个pid本身带了括弧导致的
------解决方案--------------------
不是你自己加的括弧吗?打个断点看看pid的值是什么?数据库里面是不是用了数字类型了,如果是,把单引号拿掉。你update语句放到sql上执行受影响的行为0 啊,没更新
------解决方案--------------------
把输出的语句放到mysql执行器中能执行吗?
------解决方案--------------------
replace后 转型.赋值.
------解决方案--------------------
错误本身就会告诉你原因,你却忽视了它。
另外拼接SQL最好少用,许多问题都由它引起。
需要用C#执行一条语句,将数据库中字段message的值中含有网址A的替换为网址B
string message_sql = @"UPDATE xhaitao_forum_post SET message=REPLACE(message,'http://haitao.smzdm.com/go_ht/270133/8','http://xxxxx.com/xxxxxx') WHERE (pid ='"+pid+"')";
string temp = mysql.GetScalar(message_sql);
但是总是出错,不知道什么原因
我把单独的语句拿出来
放到服务器执行是可以的。
单独放到服务器执行的语句
[SQL] UPDATE xhaitao_forum_post SET message=REPLACE(message,'http://haitao.smzdm.com/go_ht/270133/8','http://xxxxx.com/xxxxxx') WHERE pid =4
受影响的行: 0
时间: 0.000s
------解决方案--------------------
GetScalar这个函数写的什么?
------解决方案--------------------
执行updateset用ExecuteNonQuery()这个。。
------解决方案--------------------
把message_sql输出看看
应该错在pid 上边
------解决方案--------------------
你的这个pid本身带了括弧导致的
------解决方案--------------------
不是你自己加的括弧吗?打个断点看看pid的值是什么?数据库里面是不是用了数字类型了,如果是,把单引号拿掉。你update语句放到sql上执行受影响的行为0 啊,没更新
------解决方案--------------------
把输出的语句放到mysql执行器中能执行吗?
------解决方案--------------------
replace后 转型.赋值.
------解决方案--------------------
错误本身就会告诉你原因,你却忽视了它。
另外拼接SQL最好少用,许多问题都由它引起。