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 を使用していて、データが UNIQUE であっても、レコード内の順序とデータが同じでない限り、重複レコードが作成されます。誰かが私が間違っているところを提案できますか? データとの一致に基づいてレコードを置き換えたいだけです。ドキュメントを何度も読みましたが、これは私には正しいようです。