建立乙個user表,主鍵字段(這裡示例用userid)的屬性不要設定自增
開啟表結構
新增觸發器
如圖,1、觸發器視窗
2、選擇before insert
3、此觸發器的名稱,可自定義
4、插入**,觸發器的邏輯
;--觸發器的邏輯
--說明:userid是主鍵名稱,根據自己情況來
set new.userid = replace(uuid(), 『-』 ,』』);的作用:將 - 去除最後應用即可生成的32位uuid中有符號 -
比如26ea6f97-66ab-11ea-acd6-d017c24245d8
若想原樣顯示,則將**換成
set new.userid=uuid();
MySQL建立表時設定主鍵id為uuid
oracel建立uuid為主鍵的表時可以直接指定default uuid 但是mysql不支援,可以通過觸發器實現。下面是建立乙個產品表的sql語句。建表語句 create table product id varchar 36 not null productnum varchar 50 not ...
mysql主鍵id不連續
唯一鍵衝突 事務回滾 批量插入時申請主鍵的策略造成mysql中自增主鍵不連續 批量申請自增主鍵時它的申請數量是乘2遞增的,比如插入4條資料,第一條申請1個主鍵 第二個申請2個滿足第二和三條資料插入時使用,第四條資料插入時還需要再申請一次,這次會分配4個主鍵,但是只用了1個,有3個就浪費了,並出現了i...
設定非主鍵為unique
很多時候需要將某一欄位 非主鍵 設定為unique,以下提供3種方法 1.設定為主鍵 drop table product create table product id allint unsigned not null primary key,modelid allint unsigned not...