博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mybatis番外篇(一)自动生成键selectkey
阅读量:6195 次
发布时间:2019-06-21

本文共 1008 字,大约阅读时间需要 3 分钟。

我们在数据库插入一条数据的时候,经常是需要返回插入这条数据的主键。但是数据库供应商之间生成主键的方式都不一样。

有些是预先生成(pre-generate)主键的,如Oracle和PostgreSQL;有些是事后生成(post-generate)主键的,如MySQL和SQL Server。但不管是哪种方式,我们都可以用ibatis的节点来获取语句所产生的主键。

1、oracle例子:

SELECT STOCKIDSEQUENCE.NEXTVAL AS VALUE FROM DUAL
insert into PRODUCT (PRD_ID,PRD_DESCRIPTION) values (#id#,#description#)

2、sql-server例子:

insert into PRODUCT (PRD_DESCRIPTION) values (#description#)
select @@IDENTITY as value

3、mysql例子:

insert into PRODUCT (PRD_DESCRIPTION) values (#description#)
select LAST_INSERT_ID() as value

2、SQLite例子:

INSERT INTO SUBJECT (SubjectName,QuestionCount,IsNowPaper) VALUES(#SubjectName#,#QuestionCount#,#IsNowPaper#)
SELECT seq FROM sqlite_sequence WHERE (name = 'SUBJECT')
  

注意:name = 'SUBJECT'中SUBJECT为表名称

转载地址:http://aryca.baihongyu.com/

你可能感兴趣的文章
Postfix 邮件路由和传输研究
查看>>
AD 组策略
查看>>
Jump Star-隐私政策
查看>>
Windows7下Audacity无法内录的解决方法——开启立体声混音
查看>>
css3 属性选择器 对于数字识别问题
查看>>
Nagios监控之5:rrdtool安装
查看>>
kvm-img 命令介绍
查看>>
Python logging模块
查看>>
index.sql升级索引文件
查看>>
linux(centos) DHCP模式时,查看网卡信息
查看>>
PHP 程序 右键网页源代码出现一行或者多行空行解决办法
查看>>
linux系统启动流程
查看>>
ror配置
查看>>
PHP反射基础
查看>>
Java入门之多态
查看>>
论OSPF中ASBR和ABR
查看>>
Oracle Lsnrctl监听器的启动和关闭
查看>>
shell特殊符号cut命令sortwcuniq命令tee_tr_split命令shell特殊符号下
查看>>
sed字符匹配
查看>>
linux删除大量文件
查看>>