设置一个接一个的列值

时间:2010-01-14 10:26:49

标签: sql mysql

我有一个表格,我希望在插入时将一个值设置为与另一个值相同。

这是有问题的表格;

CREATE TABLE categories (  
  id INT NOT NULL AUTO_INCREMENT,
  title VARCHAR(30) NOT NULL,
  root INT NULL DEFAULT id,
  PRIMARY KEY(id)
);

我希望列'root'获得与'id'列在插入新行时获得的值相同的值。我想我可以在两个查询中完成它,但我希望我能在一个查询中完成。

谢谢,
_L

1 个答案:

答案 0 :(得分:0)

我会使用触发器。你使用MySQL 5.0.2或更高版本?因为在此之前MySQL没有触发器。

尝试:

CREATE TRIGGER id_root_same AFTER INSERT ON categories 
FOR EACH ROW SET root = NEW.id;

但你为什么要做这样的事呢?这没有意义。