mysql - 我可以在 MySql 中使用函数作为默认值吗?

标签 mysql

我想做这样的事情:


create table app_users
(
    app_user_id smallint(6) not null auto_increment primary key,
    api_key     char(36) not null default uuid()
);

但是这会导致错误,有没有办法在 mysql 中调用函数以获得默认值?

谢谢。

最佳答案

不,你不能。

但是,您可以轻松地创建一个触发器来执行此操作,例如:

CREATE TRIGGER before_insert_app_users
  BEFORE INSERT ON app_users 
  FOR EACH ROW
  SET new.api_key = uuid();

关于mysql - 我可以在 MySql 中使用函数作为默认值吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/270309/

相关文章:

mysql - 我无法更新具有两个唯一键的表

MySQL - 排除冲突的日期范围

mysql 选择到 outfile 文本文件选项卡以换行符分隔

php - 从 $xml 填充 MySQL 数据库

php - 数据库:select Laravel 5 how to pass query results to my posts

mysql - 如何从通过中间表链接的 2 个父表获取数据

mysql - 查找多个列和表中不存在的唯一值

php - C :\wamp\www\filepath\cake\libs\model\datasources\dbo\dbo_mysql. php 超出最大执行时间 60 秒

php - 在选择选项中显示两个表选择值

mysql - 如何删除同一列中具有自动增量的主键