2013-01-22 34 views
0

我正在運行一個fgetcsv查詢來將一堆數據從CSV導入到WordPress中。如何從一定數量/偏移量開始AUTOINCREMENT?

我想知道如何從一定數量開始自動增量,例如從1000開始。

$import1="INSERT into wp_postmeta (meta_id,post_id,meta_key,meta_value) values(',',',','first_name','$data[1]')"; 

這是一個代碼示例。 meta_id應該使用正常的自動增量,但post_id我想從一定數量開始。

我該如何做到這一點?

回答

3

要設置自動遞增字段的初始值,你可以使用alter table

ALTER TABLE wp_postmeta AUTO_INCREMENT = 1000; 

據我所知,這是不可能有兩個自動遞增字段在同一個表中的MySQL,所以你必須這樣做pro​​gamatically自己(如與觸發)

+0

我會在哪裏插入?此外,不會影響meta_id和post_id列的自動增量偏移嗎? –

+1

你應該看看在mysql文檔中插入觸發器。例如,讓tigger將新行的meta_id值設置爲MAX(meta_id)+ 1;並將常規自動增量字段保留在post_id – Lepidosteus

+0

單個表中的兩個自動遞增字段是代碼異味(設計異味?),表示您應該有兩個單獨的表。 – AgentConundrum

1

要改變桌子上的AUTO_INCREMENT值:

ALTER TABLE wp_postmeta AUTO_INCREMENT = 1000; 
+0

我需要更改表格中列的auto_increment值,因爲只有post_id應該受到影響。 –

+1

只有一列使用AUTO_INCREMENT定義 - 它會更改哪個列被定義 – ste

相關問題