欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

mysql實現(xiàn)將列默認值設(shè)置為uuid

 更新時間:2025年11月10日 09:05:23   作者:nayi_224  
在MySQL 8.1.0中建表時,主鍵和普通列都可以設(shè)置默認值,需要注意的是,使用UUID()函數(shù)時必須加上括號,否則會報錯,修改時同樣需要加括號,目前無法使用自定義函數(shù)作為默認值,MySQL也不支持,可以使用內(nèi)置函數(shù)如LENGTH、CONCAT等,但若可能,應(yīng)盡量避免使用觸發(fā)器來設(shè)置默認值

使用mysql版本為8.1.0

建表時設(shè)置

create table test(
  uuid varchar(100) NOT NULL default (uuid()) ,
  aaaa varchar(100) not null default (uuid()) ,
  primary key(uuid) 
);

可以看到主鍵和普通列都可以設(shè)置,但是要注意uuid()要加上括號,否則會報錯

修改時設(shè)置

ALTER TABLE test MODIFY uuid VARCHAR(36) DEFAULT (uuid());
ALTER TABLE test MODIFY aaaa VARCHAR(36) DEFAULT (uuid());

同樣注意要添加括號

使用自定義函數(shù)

目前沒有使用默認值的方式設(shè)置成功過,mysql好像不支持使用自定義函數(shù)作為默認值

CREATE FUNCTION custom_function_name()
RETURNS int
DETERMINISTIC
BEGIN
    RETURN 1;
END;
ALTER TABLE test MODIFY aaaa VARCHAR(36) DEFAULT (custom_function_name());


會報錯 3770 - Default value expression of column 'aaaa' contains a disallowed function: custom_function_name.

而使用其他內(nèi)置函數(shù),如length、concat等是可以的

這時應(yīng)該只能使用觸發(fā)器了,需要注意的是,在設(shè)置默認值時,只要能不使用觸發(fā)器,就一定不要使用

CREATE FUNCTION custom_function_name()
RETURNS int
DETERMINISTIC
BEGIN
    RETURN 1;
END;

create trigger tri_test_uuid
before insert on test
for each ROW
BEGIN
    SET new.aaaa=custom_function_name();
END
;

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 解決mysql導(dǎo)入還原時亂碼的問題

    解決mysql導(dǎo)入還原時亂碼的問題

    sql文件,直接記事本方式打開,中文顯示正常,還原導(dǎo)入后,發(fā)現(xiàn)中文是亂碼
    2012-12-12
  • MySQL中怎么匹配年月

    MySQL中怎么匹配年月

    一般數(shù)據(jù)庫中給到的時間都是年-月-日形式的,那怎么匹配年-月/的形式呢,下面通過實例代碼介紹怎么在數(shù)據(jù)庫中查詢到關(guān)于2021年8月的數(shù)據(jù),對mysql匹配年月相關(guān)知識,感興趣的朋友跟隨小編一起看看吧
    2024-04-04
  • Mysql Explain 詳細介紹

    Mysql Explain 詳細介紹

    這篇文章主要介紹了Mysql Explain 詳細介紹的相關(guān)資料,這里對Mysql Explain 的語法,屬性,以及如何使用,做了全面介紹,需要的朋友可以參考下
    2016-11-11
  • 詳解MySQL數(shù)據(jù)庫insert和update語句

    詳解MySQL數(shù)據(jù)庫insert和update語句

    用于操作數(shù)據(jù)庫的SQL一般分為兩種,一種是查詢語句,也就是我們所說的SELECT語句,另外一種就是更新語句,也叫做數(shù)據(jù)操作語句。接下來通過本文給大家介紹MySQL數(shù)據(jù)庫insert和update語句,需要的朋友一起學(xué)習(xí)吧
    2016-04-04
  • mysql myisam 優(yōu)化設(shè)置設(shè)置

    mysql myisam 優(yōu)化設(shè)置設(shè)置

    mysql myisam 優(yōu)化設(shè)置設(shè)置,需要的朋友可以參考下。
    2010-03-03
  • MySQL?中的?LIMIT?語句及基本用法

    MySQL?中的?LIMIT?語句及基本用法

    LIMIT?語句用于限制查詢返回的行數(shù),常用于分頁查詢或取部分數(shù)據(jù),提高查詢效率,本文給大家介紹MySQL?中的?LIMIT?語句,本文給大家介紹的非常詳細,感興趣的朋友一起看看吧
    2025-06-06
  • MySQL系統(tǒng)庫之information_schema的實現(xiàn)

    MySQL系統(tǒng)庫之information_schema的實現(xiàn)

    information_schema用于存儲數(shù)據(jù)庫元數(shù)據(jù),本文主要介紹了MySQL系統(tǒng)庫之information_schema的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2023-11-11
  • 使用mysqldump對MySQL的數(shù)據(jù)進行備份的操作教程

    使用mysqldump對MySQL的數(shù)據(jù)進行備份的操作教程

    這篇文章主要介紹了使用mysqldump對MySQL的數(shù)據(jù)進行備份的操作教程,示例環(huán)境基于CentOS操作系統(tǒng),需要的朋友可以參考下
    2015-12-12
  • MySQL數(shù)據(jù)庫的多種連接方式以及實用工具

    MySQL數(shù)據(jù)庫的多種連接方式以及實用工具

    mysql連接操作是客戶端進程與mysql數(shù)據(jù)庫實例進程進行通信,下面這篇文章主要給大家介紹了關(guān)于MySQL數(shù)據(jù)庫的多種連接方式以及實用工具的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-02-02
  • MYSQL常用字符串函數(shù)和時間函數(shù)示例詳解

    MYSQL常用字符串函數(shù)和時間函數(shù)示例詳解

    字符串函數(shù)是最常用的的一種函數(shù),在一個具體應(yīng)用中通常會綜合幾個甚至幾類函數(shù)來實現(xiàn)相應(yīng)的應(yīng)用,這篇文章主要介紹了MYSQL常用字符串函數(shù)和時間函數(shù)的相關(guān)資料,需要的朋友可以參考下
    2025-07-07

最新評論