Spring使用序列Sequence的两种方法
来源:互联网 发布:上海的人工智能企业 编辑:程序博客网 时间:2024/05/19 20:22
CREATE TABLE Booking ( id INTEGER NOT NULL, date_made DATE, reserved_until TIMESTAMP, price DECIMAL(15, 2) NOT NULL, Purchase_id INTEGER, PRIMARY KEY(id))
create sequence booking_seq start with 1 increment by 1 nomaxvalue;
方法一:利用Spring的org.springframework.jdbc.support.incrementer.OracleSequenceMaxValueIncrementer
OracleSequenceMaxValueIncrementer incr = new OracleSequenceMaxValueIncrementer(dataSource, "booking_seq"); public int getNewBookingId() { return incr.nextIntValue();}
针对不同的数据库Spring提供了不同的支持类。
方法二:使用数据库本身的触发器
CREATE OR REPLACE TRIGGER tib_booking BEFORE INSERTON BOOKING FOR EACH ROWDECLARE integrity_error EXCEPTION; errno INTEGER; errmsg CHAR(200); dummy INTEGER; FOUND BOOLEAN;
BEGIN -- Column "ID" uses sequence booking_seq SELECT booking_seq.NEXTVAL INTO :NEW.ID FROM dual;
-- Errors handlingEXCEPTION WHEN integrity_error THEN RAISE_APPLICATION_ERROR(errno, errmsg);END;
测试:
INSERT INTO BOOKING(date_made,price) VALUES(SYSDATE,22222);COMMIT;
- Spring使用序列Sequence的两种方法
- 两种获取Oracle Sequence的方法
- 两种获取Oracle Sequence的方法
- Android序列化的两种方法
- MySQL模拟Oracle的Sequence两种方法
- MySQL模拟Oracle的Sequence两种方法
- Oracle序列的(Sequence)使用
- Oracle序列的(Sequence)使用
- Oracle序列的(Sequence)使用
- 关于Oracle的序列(Sequence)使用
- ORACLE序列的使用(oracle sequence)
- oracle中sequence序列的使用
- ORACLE序列的使用(oracle sequence)
- oracle中sequence序列的使用
- 【Oracle】序列Sequence对象的使用
- 数据库序列( SEQUENCE)的使用
- Oracle中Sequence序列的使用
- spring上下文的两种配置方法
- Smarty常用的20个变量操作符实例
- Openfire服务端源代码开发配置指南
- Maximum Subarray
- android4.0 禁止横竖屏切换使用 android:configChanges="orientation|keyboardHidden"无效
- 一句话搞定关于win7 x64 /win2008r2/win2012 下 VS2010 /vs2012连接oracle 客户端
- Spring使用序列Sequence的两种方法
- 文本框输入信息
- Request与Response
- js 弹框刷新父页面 ajax异步登录
- ios开发——新浪微博客户端
- 加锁进行数据库更新
- 跳开验证码进行攻击
- 在android的webview中 javascript与java代码互相调用
- 安全校验验证码并避免绕开验证码攻击