我有一个excel电子表格,其中包含多对多关系的产品和类别,我需要使用它来填充数据库。我正在寻找一种快速输入此数据的方法,并让连接表具有所有正确的信息。我有phpmyadmin但它似乎有点慢,除非有一个捷径。我想的另一种方法是编写一些我可以复制和粘贴的查询,但是让连接表变得正确可能更具挑战性。除非有人能想到我可以创建产品和类别并具有连接连接的查询。
产品
* PRODUCT_ID (primary key)
* PRODUCT_NAME
分类
* CATEGORY_ID (primary key)
* CATEGORY_NAME
PRODUCT_CATEGORIES_MAP
* PRODUCT_ID (primary key, foreign key to PRODUCTS)
* CATEGORY_ID (primary key, foreign key to CATEGORIES)
* QUANTITY
答案 0 :(得分:6)
大多数数据库都有某种优化的批量插入,比使用INSERT语句更快/更乏味 - 对于MySQL,它是LOAD DATA INFILE syntax。
来自电子表格,很容易生成CSV ouptut,因此您可以使用:
LOAD DATA INFILE 'data.txt' INTO TABLE your_table
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
IGNORE 1 LINES;
答案 1 :(得分:2)
将它们导出为3个CSV文件,然后使用LOAD DATA INFILE
将它们加载到服务器中。
答案 2 :(得分:0)
如果你必须这么做(就像我一样),可以考虑使用像SquirrelSQL这样的数据库客户端软件包,或者自己编写一个使用Excel阅读器和DBI的非常简单的PERL程序。 / p>