久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

MySQL數據庫中怎么實現序列自增功能

135次閱讀
沒有評論

共計 1666 個字符,預計需要花費 5 分鐘才能閱讀完成。

自動寫代碼機器人,免費開通

MySQL 數據庫中怎么實現序列自增功能,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

1、創建 sequence 表

CREATE TABLE `sequence` ( `name` VARCHAR ( 50 ) COLLATE utf8_bin NOT NULL COMMENT  序列的名字 , `current_value` INT ( 11 ) NOT NULL COMMENT  序列的當前值 , `increment` INT ( 11 ) NOT NULL DEFAULT  1  COMMENT  序列的自增值 , PRIMARY KEY ( `name` ) ) ENGINE = INNODB DEFAULT CHARSET = utf8 COLLATE = utf8_bin;

MySQL 數據庫中怎么實現序列自增功能

2、創建 ndash; 取當前值的函數

DROP FUNCTION IF EXISTS currval; DELIMITER $ CREATE FUNCTION currval (seq_name VARCHAR(50)) RETURNS INTEGER LANGUAGE SQL DETERMINISTIC CONTAINS SQL SQL SECURITY DEFINER COMMENT   BEGIN DECLARE value INTEGER; SET value = 0; SELECT current_value INTO value FROM sequence WHERE name = seq_name; RETURN value; END $ DELIMITER ;

3、創建 ndash; 取下一個值的函數

DROP FUNCTION IF EXISTS nextval; DELIMITER $ CREATE FUNCTION nextval (seq_name VARCHAR(50)) RETURNS INTEGER LANGUAGE SQL DETERMINISTIC CONTAINS SQL SQL SECURITY DEFINER COMMENT   BEGIN UPDATE sequence SET current_value = current_value + increment WHERE name = seq_name; RETURN currval(seq_name); END $ DELIMITER ;

MySQL 數據庫中怎么實現序列自增功能

4、創建 ndash; 更新當前值的函數

DROP FUNCTION IF EXISTS setval; DELIMITER $ CREATE FUNCTION setval (seq_name VARCHAR(50), value INTEGER) RETURNS INTEGER LANGUAGE SQL DETERMINISTIC CONTAINS SQL SQL SECURITY DEFINER COMMENT   BEGIN UPDATE sequence SET current_value = value WHERE name = seq_name; RETURN currval(seq_name); END $ DELIMITER ;

MySQL 數據庫中怎么實現序列自增功能

5、測試

INSERT INTO sequence VALUES (hwb_Seq , 0, 1);-- 添加一個 sequence 名稱和初始值,以及自增幅度  SELECT SETVAL(hwb_Seq , 10);-- 設置指定 sequence 的初始值  SELECT CURRVAL(hwb_Seq -- 查詢指定 sequence 的當前值  SELECT NEXTVAL( hwb_Seq -- 查詢指定 sequence 的下一個值 

MySQL 數據庫中怎么實現序列自增功能

看完上述內容,你們掌握 MySQL 數據庫中怎么實現序列自增功能的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注丸趣 TV 行業資訊頻道,感謝各位的閱讀!

向 AI 問一下細節

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-12-04發表,共計1666字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 祁东县| 满洲里市| 鄯善县| 额尔古纳市| 南雄市| 宝清县| 石城县| 平乡县| 汾阳市| 睢宁县| 屯门区| 南华县| 古田县| 华宁县| 龙州县| 汉沽区| 高要市| 延吉市| 吐鲁番市| 哈密市| 丰县| 淮滨县| 卓尼县| 蓝山县| 正镶白旗| 邵阳市| 阜宁县| 方城县| 米易县| 呼图壁县| 罗源县| 莎车县| 延津县| 凌云县| 胶州市| 二连浩特市| 黔西县| 襄垣县| 维西| 麦盖提县| 鞍山市|