【问题标题】:Help with LOAD DATA INTO FILE帮助将数据加载到文件中
【发布时间】:2011-10-20 10:43:08
【问题描述】:

我有一个类似的数据库设置

  `id` int(11) unsigned NOT NULL auto_increment,
  `ad-id` int(11) default NULL,
  `advertiser-id` int(11) default NULL,
  `advertiser-name` varchar(250) default NULL,
  `advertiser-category` varchar(250) default NULL,
  `buy-url` varchar(255) default NULL,
  `catalog-id` varchar(255) default NULL,
  `currency` varchar(3) default NULL,
  `description` varchar(255) default NULL,
  `image-url` varchar(255) default NULL,
  `in-stock` varchar(255) default NULL,
  `isbn` varchar(13) default NULL,
  `manufacturer-name` varchar(255) default NULL,
  `manufacturer-sku` varchar(50) default NULL,
  `name` varchar(255) default NULL,
  `price` decimal(10,2) default NULL,
  `retail-price` decimal(10,2) default NULL,
  `sale-price` decimal(10,2) default NULL,
  `sku` varchar(50) default NULL,
  `upc` varchar(50) default NULL,

我正在尝试像这样加载数据:

LOAD DATA LOW_PRIORITY LOCAL INFILE "/home/datafeed/tempfile.csv" REPLACE INTO TABLE products_import FIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY """" LINES TERMINATED BY "\n" (ad-id, advertiser-id, advertiser-name, advertiser-category, buy-url,catalog-id,currency, description,image-url,in-stock,isbn,manufacturer-name,manufacturer-sku,name,price,retail-price,sale-price,sku, upc);

但它似乎不喜欢带有破折​​号的数据库名称。字段名称几乎是一成不变的。如果我尝试在没有字段名称的情况下插入,则会将所有内容设置在错误的字段中(以 autoinc 开头)

我对 MySQL 不是很好,如果有任何帮助,将不胜感激。

【问题讨论】:

    标签: php mysql database load-data-infile


    【解决方案1】:

    在字段名称周围加上反引号:`ad-id` 等,就像在您的表结构列表中一样。

    【讨论】:

    • 如此简单!为什么我没看到,谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-04-20
    • 1970-01-01
    • 1970-01-01
    • 2021-12-21
    • 1970-01-01
    • 1970-01-01
    • 2015-01-22
    相关资源
    最近更新 更多