【问题标题】:Custom CSV imports into Mysql自定义 CSV 导入 Mysql
【发布时间】:2011-10-29 19:00:16
【问题描述】:

我正在尝试将一些 csv 数据导入 mysql。问题是 csv 字段和数据库字段之间没有精确的一对一映射。我正在寻找一种将数据导入所需字段的简单方法。我想导入一些字段而不是其他字段。我想为所有案例分配“2”以匹配查找值的字段之一。

我可以买一个工具,但我不想花钱。我可以使用导入命令执行此操作而无需编辑 csv 文件吗?任何示例或建议将不胜感激。

--------- desc addrTable; ------------------

+-------------+--------------+------+-----+---------+----------------+
| Field       | Type         | Null | Key | Default | Extra          |
+-------------+--------------+------+-----+---------+----------------+
| id          | int(11)      | NO   | PRI | NULL    | auto_increment |
| supervisor  | int(11)      | NO   | MUL | NULL    |                |
| lastName    | varchar(20)  | NO   |     | NULL    |                |
| firstName   | varchar(20)  | NO   |     | NULL    |                |
| fullName    | varchar(40)  | NO   |     | NULL    |                |
| addr1       | varchar(50)  | NO   |     | NULL    |                |
| addr2       | varchar(50)  | NO   |     | NULL    |                |
| city        | varchar(25)  | NO   |     | NULL    |                |
| state       | varchar(2)   | NO   |     | NULL    |                |
| zipCode     | varchar(8)   | NO   |     | NULL    |                |
| notes       | longtext     | YES  |     | NULL    |                |
| spouse      | varchar(30)  | NO   |     | NULL    |                |
| gender      | varchar(1)   | NO   |     | NULL    |                |
| kids        | int(11)      | NO   |     | NULL    |                |
| birthday    | varchar(20)  | NO   |     | NULL    |                |
| spouseDOB   | date         | YES  |     | NULL    |                |
| email       | varchar(75)  | NO   |     | NULL    |                |
| workPhone   | varchar(12)  | NO   |     | NULL    |                |
| cellPhone   | varchar(12)  | NO   |     | NULL    |                |
+-------------+--------------+------+-----+---------+----------------+

---------csv 标头------

以下是我的 CSV 标头。请注意,其中一些标题没有值 '*'d',我想跳过这些字段?也没有主管字段。这是一个查找,我想将“2”的值分配给每个导入的记录。

"Last_Name",
"First_Name",
"Full_Name",
"Address",
"City",
"State",
"Zip",
"Notes",
"Spouse",
"Kids",
"Birthday",
"Birthday_Day", *
"Birthday_Month", *
"Spouse_DOB",
"Email",
"Work_Phone",
"Cell_Phone"

【问题讨论】:

    标签: mysql csv import


    【解决方案1】:

    我会使用 mysqlimport 将数据加载到临时表中......然后从临时表中选择到目标。这样您就可以添加缺少的列。

    例如:

    insert into t2
    select last_name,first_name, etc,2 as supervisorid
    from t1
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-06-25
      • 2013-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-19
      相关资源
      最近更新 更多