MySQL序列表意义

MySQL序列表意义,第1张

Mysql中的序列主要用于主键,主键是递增的字段,不可重复。

Mysql与Oracle不同的是,它不支持原生态的sequence,需要用表和函数的组合来实现类似序列的功能。

问题分析:序列=自增ID,是数据库根据数据插入先后顺序自动生成的。

查询方式:

只能再查询自增ID即可

具体 *** 作:MYSQL获取自增ID的四种方法

select max(id) from tablename

SELECT LAST_INSERT_ID() 函数

LAST_INSERT_ID 是与table无关的,如果向表a插入数据后,再向表b插入数据,LAST_INSERT_ID会改变。

select @@IDENTITY

@@identity 是表示的是最近一次向具有identity属性(即自增列)的表插入数据时对应的自增列的值,是系统定义的全局变量。一般系统定义的全局变量都是以@@开头,用户自定义变量以@开头。

SHOW TABLE STATUS

得出的结果里边对应表名记录中有个Auto_increment字段,里边有下一个自增ID的数值就是当前该表的最大自增ID.

mysql是没有序列的,我最近刚做完一个项目也是从oralce移植到mysql数据库上,oracle中 HIbernate配置都是这样

<generator class="sequence">

<param name="sequence">SEQUENCE_CHILDREM_ARCHIVE_ID</param>

</generator>

,到移植到mysql数据库中之后

<generator class="identity"></generator>

identity或者是increment都是可以滴,前提是你mysql表中的主键是auto_increatement的int类型的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7455584.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存