不同的环境下
UPDATE Users SET SubmitTime = '1987/11/11 18:08:01' WHERE CardNo = 341221198512241798;
SELECT UserID FROM Users WHERE CardNo = 341221198512241798;SELECT UserID FROM Users WHERE CardNo = 341221198512241798;
的查询结果会有差别么?我说的环境可能是包含:操作系统平台,mysql版本==

解决方案 »

  1.   

    其中遇到的问题 可能是在于update语句,而select没有差别
      

  2.   

    1. 你的表中该 CardNo 字段是什么类型?
       字段的设定类型是什么,你用什么类型查询会快一些,比如字符形你要带上引号快一些,因为省去系统做的类型转换操作了
    2. 看上去 CardNo 是身份证号吧,你不可以用数值型,因为身份证号有的包含一个 'x',这时候它就不是纯数字了。你不带引号的时候是一个数值,而数值里是没有 x 的,所以系统会报错
    3. 即使 CardNo 是全数字的内容,可以根据如下原则确定使用什么类型:
       - 有用于数学运算使用数值型
       - 不用于数学运算使用字符型
      

  3.   

    SELECT UserID FROM Users WHERE CardNo = 341221198512241798;这个没什么差别。
      

  4.   

    UPDATE Users SET SubmitTime = '1987/11/11 18:08:01' WHERE CardNo = 341221198512241798;这个则要看你的系统日期格式
      

  5.   

    用DATE_FORMAT设置格式

    DATE_FORMAT(f1,'%Y-%m-%d')