先来说说我的需求,就是要将很多excel 数据导入到mysql中,我的数据时一对多,所以先将表拆分,整理好,然后开始写sql.
="INSERT INTO `desp`.`surveyparam` (
`Name`, `gs`, `fak`, `es`, `eo`)values('"&B6&"','"&C6&"','"&D6&"','"&E6&"','"&F6&"');" 这个写出来的SQL中,insert外面还会有双引号;
原因:"="前面不能有空格,语句不能跨行;因为我是在Notepad++上操作 习惯语句太长 就用换行
'" "'单引号+双引号可以换成使用"""""",三对双引号
成功的例子:
="INSERT INTO `desp`.`surveyparam` (`geotechnicalName`, `gs`, `fak`, `es`, `eo`, `c1`, `c2`, `f1`, `f2`, `ks`, `us`, `perfusion_qsk`, `perfusion_qpk`, `prefabrication_qsk`, `prefabrication_qpk`, "&" `compositeFoundation_qsk`, `compositeFoundation_qpk`, `frbk`, `surveyDataId`) "&" VALUES ('"&B6&"','"&C6&"','"&D6&"','"&E6&"','"&F6&"','"&G6&"','"&H6&"','"&I6&"','"&J6&"','"&K6&"','"&L6&"','"&M6&"','"&N6&"','"&O6&"','"&P6&"','"&Q6&"','"&R6&"','"&S6&"','"&A6&"');"
如果这样还有双引号,解决办法:
在另外的单元格中Clean(SQL的单元格)
问题1:由于表字段太多,公式不能超过255个字符。公式中的文本值限制在255个字符以内。若要在工事中创建较长文本值,请使用
解决方案:根据提示 我选择了用"&"进行拼接。 记住一定要加双引号。
问题二:因为写好的sql 通过excel 复制粘贴到mysql中,但是有的数据却报错,颜色不对。后来才发现是添加的数据有"\"。只要改成"/"。就可以了 这个是转义字符出现的问题。
注:关键的一句话:外面是单引号,里面就要用双引号。外面是双引号,里面就要用单引号。