如何在一个数据库表中获得两个自动增量?

时间:2011-10-17 07:53:22

标签: sql

我希望post_delete列生成唯一ID,以便在我想删除例如注释时我可以参考post_delete的值。

这是我的用户表

CREATE TABLE users (  
user_id     INT(8) NOT NULL AUTO_INCREMENT,  
user_name   VARCHAR(30) NOT NULL,  
user_pass   VARCHAR(255) NOT NULL,  
user_email  VARCHAR(255) NOT NULL,  
user_date   DATETIME NOT NULL,  
user_level  INT(8) NOT NULL,  
pic_location  VARCHAR(255) NOT NULL,
post_delete  INT(8) NOT NULL AUTO_INCREMENT, 
UNIQUE INDEX user_name_unique (user_name),  
PRIMARY KEY (user_id)  
);

,这是我的帖子TABLE

CREATE TABLE posts (  
post_id         INT(8) NOT NULL AUTO_INCREMENT,  
post_content        TEXT NOT NULL,  
post_date       DATETIME NOT NULL,  
post_topic      INT(8) NOT NULL,
post_by     INT(8) NOT NULL,  
PRIMARY KEY (post_id)  
);

,这是我在php中的删除查询

$sql = "DELETE FROM posts WHERE post_by =" . $_SESSION['post_delete'];

它表示当我包含表时,只能有一个自动增量。如何更改此设置以便post_delete可以生成唯一ID?

谢谢!

1 个答案:

答案 0 :(得分:1)

您是否可以使用触发器自动填充第二个自动递增列?我对触发器不好,但听起来像是他们可以做的事情。