mysql模仿oracle序列

2021-06-01 13:50:43 字數 683 閱讀 5442

drop table if exists sequence;

create table sequence (

idval int unsigned auto_increment,

primary key (idval)

) engine=innodb;

drop function if exists nextval;

delimiter $

create function nextval ()

returns integer

contains sql

begin

declare id long;

insert into sequence () values();

select last_insert_id() into id;

return id;

end$

delimiter ;

使用效果:

mysql> select nextval(); 

+-----------+

| nextval() |

+-----------+

| 89 |

+-----------+

oracle序列和mysql序列

1.什麼是序列?序列 可供多個使用者用來產生唯一數值的資料庫物件 2.為什麼用序列?自動提供唯一的數值 共享物件 主要用於提供主鍵值 將序列值裝入記憶體可以提高訪問效率 3.怎麼用序列?重點 oracle序列和mysql序列 oracle序列 建立create sequence dept depti...

MySQL模擬Oracle序列sequence

沒發現,這麼多同學有這個需求,把文件補充一下,其實就是建立1個表,和2個儲存過程。利用表的行級鎖模擬每乙個表的序列增減。drop table if exists sys sequence create table sys sequence seq name varchar 50 not null,c...

MySQL函式模擬Oracle序列

oracle資料庫遷移到mysql的過程中,需要解決mysql中沒有oracle的序列功能,本人的解決方案是通過一張表用來記錄oracle中序列的名稱 當前序列的值及每次步進長度,通過倆個函式來模擬序列自增,具體 如下 建表語句.create table sys sequence seq name ...