我做个微信企业号,后台用的C#、asp.net,数据库用的oracle,C#链接并操作数据库的时候被sql语句坑了好长时间,卡住了找不到问题出所在。具体问题如下: 一下是我使用的时候拼接的有问题的sql串
string sqlStr = string.Format("UPDATE \"TB_WeeksWill\" SET \"Status\"='{0}' WHERE \"ID\"='{1}';",Status,ID);
刚开始一直找不到问题在哪里,因为我把sql串放到Navicat连接工具里执行也不报错一点问题没有,但是放到C#代码里执行虽然也不报错,但更本没有改变数据库里的数据,没有达到想要的结果。
以下是修改后能正确达到想要效果的sql串:
string sqlStr = string.Format("UPDATE \"TB_WeeksWill\" SET \"Status\"='{0}' WHERE \"ID\"='{1}'",ID);
到这里读者看到有什么区别了吗?我直接说吧,前段sql串多一个分号,后一段少一个分号,仔细看的读者就看出来了,具体什么原因前者不能达到预期的效果其实我也没弄清楚,但是我记下我的经历希望看到的读者少走些弯路,也许有经验的或者数据库厉害的人看着是小儿科,但是我确实被坑了,希望对需要帮助的人能帮到你