`
mj914
  • 浏览: 33879 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

mysql +navicat8 for mysql 1136

 
阅读更多

今早挺郁闷的,用navicat8 for mysql 新建了一张表。

INSERT INTO tbltradeHistory ( merchantAcctId , language , signType , payType , bankId , orderId ,  orderTime , orderAmount , dealId ,bankDealId , dealTime , payAmount , fee , ext1 , ext2 , payResult , errcode , signMsg , flag )  

VALUES 

  ('merchantAcctId1','language1','signType1','payType1','bankId1','orderId1','orderTime1','orderAmounta','dealId1','bankDealId1','dealTime1','payAmount1','fee1','ext11','ext12','payResult1','errcode1','signMsg1','flsag' )

 

这样插入的时候 一直报错。报 1136  需要插入的字段和实际插入的字段不匹配。但是数来数去,来回数了4次都发现数量是匹配的。人弄得很烦躁的。最后将这些sql语句复制到 notePad++这个编辑器查看,看是否有语法错误(因为当时觉得他 稍微看的清楚些)。 最后在notePad++上发现 INSERT INTO tbltradeHistory 

(merchantAcctId,version,language,signType,payType,bankId,orderId, orderTime,orderAmount,dealId,bankDealId,dealTime,payAmount,fee,ext1,ext2,payResult,errcode,signMsg,flag )  

VALUES ('merchantAcctId1'',''version1','language1','signType1','payType1'',''bankId1','orderId1'',''orderTime1','orderAmounta'',''dealId1','bankDealId1'',''dealTime1','payAmount1'',''fee1','ext11'',''ext12','payResult1'',''errcode1' , 'signMsg1' , 'flsag ' );


也就是 多了 单引号。但是感觉好惊讶的 甚至怀疑  是不是不同编辑器导致的显示问题。然后我换成 editplus也是一样的。

但是再一看 navicat8 上的代码 发现也没多单引号 。思路就在此处断了。没去怀疑是navicat8这个工具的问题。


但是碰到问题 也只能去试 想办法解决。最后我尝试将每个单引号和,等全部删除 重新添加,中间不留一点空白,才发现 ’version1‘ 等字段中,隐藏着单引号 有一些空格 而空格貌似native会自动加上单引号,但是这个单引号肉眼看不见。 
不知道这个算不算是他的bug。具体原因没查到。总之 如果以后发现 总是报列不匹配 1136 这个时候 你试着去将自己的字段中的空格等去掉,让每个字段都挨着紧的

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics