0

我正在使用 php 将文件加载到表中。我创建一个这样的表:

CREATE TABLE IF NOT EXISTS $table (
`id` INT AUTO_INCREMENT PRIMARY KEY,
`order` INT DEFAULT 0,
`data` VARCHAR(200) UNIQUE,
`cur_timestamp` TIMESTAMP DEFAULT NOW())";

并从这样的文本文件中填充它:

LOAD DATA LOCAL 
INFILE '".$file ."' REPLACE 
INTO TABLE $table 
FIELDS TERMINATED BY '^' 
(`order`,`data`)";

即使我使用的是 REPLACE 并且数据是唯一的,它也会创建重复的记录,除非记录中的顺序和数据都相同。有人可以建议我哪里出错了吗?我只希望它根据数据匹配替换记录。我一遍又一遍地阅读文档,这对我来说是正确的。

4

1 回答 1

0

我认为制作数据 KEY 会做到这一点,但如果顺序不同,它仍然会插入

CREATE TABLE IF NOT EXISTS $table (
`id` INT AUTO_INCREMENT KEY,
`order` INT DEFAULT 0,
`data` VARCHAR(200) UNIQUE KEY,
`cur_timestamp` TIMESTAMP DEFAULT NOW())";
于 2010-07-10T03:55:39.997 回答