mysql - 使用带有函数作为默认值的触发器

标签 mysql

我有一个包含三列的表格; apps_id(INT)PKapp_title(VARCHAR) 以及最后的 app_key(VARCHAR)

问题: 我希望 app_key(VARCHAR) 列获得不超过 10 位的默认随机整数,并且是第一次使用触发器

CREATE TRIGGER before_insert_apps
  BEFORE INSERT ON apps
  FOR EACH ROW
  SET apps.app = ROUND((10000000000 -70)*RAND()) + 7;

收到错误未知的系统变量“apps.app”

最佳答案

您想要而不是应用:

CREATE TRIGGER before_insert_apps
  BEFORE INSERT ON apps
  FOR EACH ROW
    SET new.app = ROUND((10000000000 -70)*RAND()) + 7;

关于mysql - 使用带有函数作为默认值的触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30142474/

相关文章:

C#+Mysql 耗尽连接。我正在使用 'using' 并立即关闭所有连接

mysql - 如何使用内连接进行左连接

php - 在 Laravel 中,如何将参数绑定(bind)到另一个查询中的查询生成器 DB raw 中的查询?

php - 如何根据表的值高亮显示记录?

mysql - LINUX 使用基于 sed 的文件从文件中删除文本部分

mysql查询基于特定十进制值的舍入

mysql - MySql 中的索引创建时间

php - yii2 在查询中选择 NULL 值(选择 NULL 作为列,...)

PHP限制错误

mysql - 合并来自每隔一行的 MySQL 选定值