mysql

时间:2017-05-05 22:26:53

标签: mysql

我的数据库中有一个users表,我希望它为每个新用户记录设置UUID。

DELIMITER ;;
CREATE TRIGGER user_uuid
BEFORE INSERT ON users
FOR EACH ROW
BEGIN
  IF new.uuid IS NULL THEN
    SET new.uuid = uuid();
  END IF;
END
;;

我使用了上面的代码,我从phpMyAdmin检查了它是否已设置。它似乎已设置但在用户注册时不在uuid列上创建UUID值。

你能看到我的代码有什么问题,因为从这里看起来似乎没问题。谢谢。

如果需要,我会在CHAR32数据类型上存储UUID值。

1 个答案:

答案 0 :(得分:0)

这段代码对我有用;

DELIMITER //
CREATE TRIGGER before_insert_on_user_set_uuids
  BEFORE INSERT ON users
  FOR EACH ROW 
    BEGIN
      SET new.uuid = uuid();
    END ;  //
DELIMITER ;