MySQL 字段 DEFAULT uuid 怎么实现

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL 字段 DEFAULT uuid 怎么实现相关的知识,希望对你有一定的参考价值。

不用改c文件... 触发器完美解决
DROP TRIGGER IF EXISTS `test`.`default_id`//
CREATE TRIGGER `test`.`default_id` BEFORE INSERT ON `test`.`test`
FOR EACH ROW if (new.id='' or new.id is null) then
set new.id= uuid();
end if
//

执行sql的时候把Delimiter 改成 // 即可
参考技术A -- mysql中有个UUID()函数,例如:
SELECT UUID();

找到数据库中所有默认为0的字段,然后将默认值改为null,这个mysql语句该怎么写?

找到数据库中所有默认为0的字段,然后将默认值改为null,这个mysql语句该怎么写?如果整个数据库不行,那一张表的该怎么写?
问题已经解决,需要用存储过程。

参考技术A 这条语句应用在MySQL中:
UPDATE COLUMNS SET COLUMNS_DEFAULT=NULL WHERE TABLE_SCHEMA=“表存在数据库的名字” AND TABLE_NAME="表的名字" AND COLUMNS_DEFAULT=0;

最后需要的注意的是权限问题。追问

我的库的名字叫base,改成TABLE_SCHEMA=“base”,报Table 'base.columns' doesn't exist?

追答

你要先用use information_schema 选定information_schema 数据库。
选定TABLE_NAME改成columns改了吗?或者你查看base下面到底有没有colums表

追问

现在遇到的问题是修改information_schema没有权限,我是root用户,还是不能改这个表

参考技术B 窦女情仇《山歌》:阳春三月桃花红,红了流水红了山,花红莺歌,蝴蝶来耶,妹妹单等采花郎。青山绿水好风光,绕了流水绕山梁,歌时青山,归时水耶,山水相依万年长。 参考技术C http://jingyan.baidu.com/article/e6c8503c19e9cfe54e1a186c.html
这个第二个修改默认值

以上是关于MySQL 字段 DEFAULT uuid 怎么实现的主要内容,如果未能解决你的问题,请参考以下文章

mysql中为一个字段添加default值为当前时间,怎么写

Mysql 用UUID做主键可行么

MySQL批量插入不重复uuid字段数据

mysql中怎么给字段设置默认字符集

id注解使用uuid 报错Field 'id' doesn't have a default value

修改某一个字段的默认值为0,SQL语句怎么写