繁体   English   中英

通过一个查询将数千个条目插入MySQL

[英]Inserting several thousand entries into MySQL with one query

我正在尝试将大约6,000个邮政编码存储到我的数据库中,但是我当然不想单独插入它们。

我有一个文本文件,其中包含执行任务所需的邮政编码

文本文件看起来像这样,

SS99 6LB,SS8 9RA,SS7 9SR,SS7 9SS,SS7 9ST

我想一次将它们全部插入数据库。

该表结构只是ID(INT),Postcode(VAR)。

您可以使用LOAD DATA INFILE

LOAD DATA LOCAL INFILE 'filename.csv' 
INTO TABLE tablename
LINES TERMINATED BY ','
(Postcode) 
;

http://dev.mysql.com/doc/refman/5.1/en/load-data.html

首先,将文本文件中的文本分配给字符串

$string ='that text';
$arr = explode(",",$string);

多数民众赞成在一个想法/概念,你现在可以做一个循环

$sql="";
foreach($arr as $ar)
{
 //$sql.=($sql=="")?"":",";
 //$sql.=$ar;
  mysql_query("insert into table(Postcodes) values ($ar)");
}

根据您的服务器检查邮政编码周围的引号语法

为了提高性能,您可以编写它,将所有内容插入一个查询中

$sql="insert into table(Postcodes) values";
foreach($arr as $ar)
{
 $sql.=($sql=="insert into table(Postcodes) values")?"":",";

  $sql.="(".$ar.")";
}
mysql_query($sql);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM