sql语句是:
INSERT INTO `tb1` SET updatetime='1279511061',user='rot',info='test',ip='127.0.0.1'字段说明:id为主键类型为int,
          updatetime类型为int,
          其他user,info,ip的类型均为varchar
问题如下:
1,在windows下这行代码是可以执行。
2,在linux下这行代码却不能执行,为啥?是因为update的字段类型的问题,还是因为少了字段id所以不能执行呢?不是说php是一种宽松型的语言么?对于数据类型尤其是str和int是可以自行判断处理的么?

解决方案 »

  1.   

    PHP是宽松的,MYSQL不是。
    试试去掉tb1前后的符号。
      

  2.   

    执行失败,把错误提示贴出来看看
    ,个人通常insert   values呵呵
      

  3.   

    insert 语句是这样写的吗??
      

  4.   

    可以这样写的 sql貌似没问题
      

  5.   

    我也是,指定字段时不要id。这样会不会好些?
    insert into tbl(updatetime,user,..........) values()
      

  6.   

    INSERT INTO `tb1` SET updatetime='1279511061',`user`='rot',info='test',ip='127.0.0.1'
    这样试试呢
      

  7.   

    可能是你linux配置的sql_mode设置为严格模式了。
    一般更新/插入语句之前,mysql_query("set sql_mode=''")即可。