我有多个TXT
个文件,其中包含以下格式的列:
id:category:topic:date
他们都排成一列。即。
1:category:topic:date
2:category:topic:date
3:category:topic:date
是否可以import
将此文件存入我的MySQL
数据库?
答案 0 :(得分:2)
在导入标签上,您可以上传CSV文件。上传文件,选择格式' CSV',然后设置:
:
你可以写一个小的PHP程序来做到这一点。首先,阅读文件:
$fh = fopen('the-file.txt', 'r');
现在,$fh
是一个读取-file.txt的处理程序。现在我们可以使用fgetcsv()
:
while (($data = fgetcsv($fh, 1000, ':', '')) !== false) {
// insert data in database
}
$data
是记录中所有数据的数组。
PDO和准备好的声明的一个例子:
// prepare the statement to insert a new record
$stmt = $pdo->prepare("INSERT INTO `some_table` (`id`, `category`, `topic`, `date`) VALUES (?, ?, ?, ?)");
// read the file
$fh = fopen('the-file.txt', 'r');
while (($data = fgetcsv($fh, 1000, ':', '')) !== false) {
$stmt->execute($data);
}
这将假设列名称是' id',' category',' topic'和' date'。
数字1000
是最大行长度。您可以将其设置为0,没有最大长度,但这稍微慢一点。有关详细信息,请参阅docs。