2010-07-10 76 views
0

我正在用php加載一個文件到一個表中。我創建一個表是這樣的:LOAD DATA INFILE REPLACE似乎不適用於多個字段?

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`)"; 

即使我使用的更換和數據是唯一會創建重複的記錄,除非指令和數據在記錄中都是相同的。有人可以建議我要去哪裏嗎?我只希望它根據與數據匹配來替換記錄。我一遍又一遍地閱讀文檔,這看起來對我來說很合適。

回答

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())";