首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将CSV文件导入MySQL表

如何将CSV文件导入MySQL表
EN

Stack Overflow用户
提问于 2012-06-18 14:22:34
回答 11查看 263.9K关注 0票数 99

如何将CSV文件导入MySQL表?我希望将第一行数据用作列名。

我读了How do I import CSV file into a MySQL table?,但唯一的答案是使用图形用户界面而不是外壳?

EN

回答 11

Stack Overflow用户

发布于 2013-01-28 23:34:40

下面是一个简单的PHP命令行脚本,它将执行您所需的操作:

代码语言:javascript
复制
<?php

$host = 'localhost';
$user = 'root';
$pass = '';
$database = 'database';

$db = mysql_connect($host, $user, $pass);
mysql_query("use $database", $db);

/********************************************************************************/
// Parameters: filename.csv table_name

$argv = $_SERVER[argv];

if($argv[1]) { $file = $argv[1]; }
else {
    echo "Please provide a file name\n"; exit; 
}
if($argv[2]) { $table = $argv[2]; }
else {
    $table = pathinfo($file);
    $table = $table['filename'];
}

/********************************************************************************/
// Get the first row to create the column headings

$fp = fopen($file, 'r');
$frow = fgetcsv($fp);

foreach($frow as $column) {
    if($columns) $columns .= ', ';
    $columns .= "`$column` varchar(250)";
}

$create = "create table if not exists $table ($columns);";
mysql_query($create, $db);

/********************************************************************************/
// Import the data into the newly created table.

$file = $_SERVER['PWD'].'/'.$file;
$q = "load data infile '$file' into table $table fields terminated by ',' ignore 1 lines";
mysql_query($q, $db);

?>

它将基于第一行创建一个表,并将其余行导入其中。以下是命令行语法:

代码语言:javascript
复制
php csv_import.php csv_file.csv table_name
票数 26
EN

Stack Overflow用户

发布于 2014-06-03 00:07:26

如果您能够安装phpadmin,则可以在导入部分将csv文件导入到数据库中,甚至还会有一个复选框将标题设置为包含表列名称的文件的第一行(如果未选中此选项,则第一行将成为数据的一部分

票数 5
EN

Stack Overflow用户

发布于 2013-07-04 14:34:44

首先,在数据库中创建一个表,其列数与csv文件中的列数相同。

然后使用以下查询

代码语言:javascript
复制
LOAD DATA INFILE 'D:/Projects/testImport.csv' INTO TABLE cardinfo
FIELDS TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\r\n'
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11077801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档