将字段的默认值设置为auto_increment值

时间:2014-04-15 12:15:13

标签: mysql sql triggers default-value

我有一张表格,其中有一个自动增量列id和另一列ord

我的目标是为ord设置id的“默认”值。我使用的是触发器(见下文),但它总是使用0而不是id值。

当我从id中删除auto_increment时,它可以正常工作。 如何将字段的“默认”值设置为auto_increment字段?

表格

CREATE TABLE IF NOT EXISTS `mytable` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `ord` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
);

触发

CREATE TRIGGER `ord_ai` BEFORE INSERT ON `mytable`
 FOR EACH ROW IF NEW.ord IS NULL THEN
    SET NEW.ord := NEW.id;
END IF

0 个答案:

没有答案