我使用
LOAD DATA LOCAL INFILE 'c:/AA.CSV' INTO TABLE `biz_info` FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '{|||}';来从csv文件向mysql导入数据,在该文件中,第一列是ID字段的,第一列的值为5,但是导入后却是0,其他行都正确,请问这是为什么?

解决方案 »

  1.   

    csv文件Unicode,但不要BOM,及无签名的Unicode文件
      

  2.   

    我试了一下,如果第一行第一列是字符串类型,那么可以导入,导入后是带“”的,其他的行的第一列并不带引号。请问这是什么问题?(我的csv文件每个字段都是用“”括起来的)
      

  3.   

    我的csv文件内容为"1","白色系",""{|||}"2","黑色系",""{|||}"3","灰色系",""{|||}"4","咖啡色系",""{|||}数据库表为CREATE TABLE IF NOT EXISTS `pro_color` (
      `id` smallint(5) unsigned default NULL,
      `color_name` varchar(20) default NULL,
      `color_code` varchar(6) default NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;导入的语句为
    LOAD DATA LOCAL INFILE 'D:/pro_color.csv' INTO TABLE `pro_color` FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '{|||}';可是就是不正确啊
      

  4.   

    LOAD DATA LOCAL INFILE 'D:/pro_color.csv' INTO TABLE `pro_color` FIELDS TERMINATED BY ',' optionally ENCLOSED BY '"' LINES TERMINATED BY '{|||}';加上这个试试