INSERT into wz__arctype (reid,topid,sortrank,typename,typedir,isdefault,defaultname,issend,channeltype,tempindex,templist,temparticle,modname,namerule,namerule2,ispart,corank,description,keywords,seotitle,moresite,siteurl,sitepath,ishidden,cross,crossid,content,smalltypes) VALUES(4,4,50,'合肥','{cmspath}/anhui/Hefei',1,'index.html',1,17,'{style}/index_city.htm','{style}/list_city.htm','{style}/article_city.htm','default','{typedir}/{pinyin}.html','{typedir}/list_{tid}_{page}.html',0,0,'','','',0,'','',0,0,'0','','')
提示1064错误:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'cross,crossid,content,smalltypes) VALUES(4,4,50,'å

解决方案 »

  1.   

    字段好多啊,值对应的类型错误,你确认一下,加引号的不是int型,不加的是int型,不符合的就改正
    跟表里对比一下
      

  2.   

    不应该乱码啊。  这里乱码是个什么情况    sql语句是动态生成的 
      

  3.   

    看看你的MySQL数据库的编码,在你安装的时候时选择什么编码的?'合肥'这个值有乱码,试试用英文代替看看,如果用英文代替了正常的话,就是你数据库编码问题了,设置一下应该就可以了!
      

  4.   

    你把文件编码也改为utf-8,统一编码,我见你发上来的是乱码,你比对一下字段类型和你传的匹配不,经常这儿会出问题,你这字段也太多了,然后把修正过的代码直接考phpmyadmin里测试最快,只要那里成功你就啥都明白了,可用注释法,觉的可疑的先删掉看行不,呆会再还原,试试
      

  5.   

    collation_connection utf8_general_ci 
    collation_database latin1_swedish_ci 
    collation_server latin1_swedish_ci 
     数据库编码
    中文改了以后 还是会报错  #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'cross,crossid,content,smalltypes) VALUES(4,4,50,'ff','{cmspath}/anhui/Hefei',1,'' at line 1
      

  6.   

    cross 是关键字。  
      

  7.   

    CROSS 是 mysql 的保留字,挪作他用时请加上转义符
    写作 `cross`
      

  8.   

    建议在列名上加  `cross`  ...
    以后数据库的表字段起名最好在字段上加 cn_列名 、这样不会关键字冲突
      

  9.   

    LZ最好不要用mysql保留字做列名。
    如果不想修改,请参考唠叨老大的例子使用。
      

  10.   

    实在找不到问题  就看下是不是用了关键字   cross  一看明显是关键字