mysql怎么获取序列名 mysql数据库查看序列信息( 二 )


PRIMARY
KEY
(seq_name)
);
实现currval的模拟方案
create
function
currval(v_seq_name
VARCHAR(50))
returns
integer
begin
declare
value
integer;
set
value
=
0;
select
current_value
into
value
from
sequence
where
seq_name
=
v_seq_name;
return
value;
end;
函数使用为:select
currval('MovieSeq');
实现nextval的模拟方案
create
function
nextval
(v_seq_name
VARCHAR(50))
return
integer
begin
update
sequence
set
current_val
=
current_val
+
increment_val
where
seq_name
=
v_seq_name;
return
currval(v_seq_name);
end;
函数使用为:select
nextval('MovieSeq');
增加设置值的函数
create
function
setval(v_seq_name
VARCHAR(50),
v_new_val
INTEGER)
returns
integer
begin
update
sequence
set
current_val
=
v_new_val
where
seq_name
=
v_seq_name;
return
currval(seq_name);
同理,可以增加对步长操作的函数 , 在此不再叙述 。
注意语法 , 数据库字段要对应上
use
bvboms;
DELIMITER
$$
create
function
setval(v_seq_name
VARCHAR(50),
v_new_val
INTEGER)
returns
integer
begin
update
sequence
set
current_val
=
v_new_val
where
seq_name
=
v_seq_name;
return
currval(seq_name);
end
$$
DELIMITER
$$
总结

您可能感兴趣的文章:mysql实现sequence功能的代码Can''t
connect
to
local
MySQL
through
socket
''/tmp/mysql.sock''解决方法Mysql常用函数大全(分类汇总讲解)利用MySQL主从配置实现读写分离减轻数据库压力mysql+spring+mybatis实现数据库读写分离的代码配置Golang中如何对MySQL进行操作详解将图片储存在MySQL数据库中的几种方法MySQL存储文本和图片的方法Ubuntu上mysql的安装及使用(通用版)nodejs同步调用获取mysql数据时遇到的大坑
怎样获取MySQL自增长的最大序列号用SELECT LAST_INSERT_ID() 取得mysql怎么获取序列名,但是需要保证LAST_INSERT_ID和插入操作在同一个session
mysql 排序后,如何加上序列号?select a.*,
(select count(*) from tbl where col=a.col) as rownum
from tbl a;
mysql 没有oracle里面的rownum函数,用这个sql可以模拟下 , 但是如果数据量大的话 , 可能执行很慢 。
mysql怎么获取序列名的介绍就聊到这里吧 , 感谢你花时间阅读本站内容,更多关于mysql数据库查看序列信息、mysql怎么获取序列名的信息别忘了在本站进行查找喔 。

推荐阅读