jdbc的Statement的事务问题,
Statement 对insert,delete,update等sql语句能进行事务提交,能回滚.也就是conn.setAutoCommit(false);能起作用.
但是对于grant/revoke等语句却不能回滚.
如:
String sqlIn1 = "insert into test1 values(1)";//正确语句,
String sqlIn1 = "insert into test1 values(1,1)";//错误语句
String sqlIn1 = "insert into test2 values(1)";//正确语句
String sqlIn2 = "insert into test2 values(2,22)";//错误语句
事务回滚成功.
String sql1 = "create user aaa identified by root";
String sql2 = "grant select on proxy_users to dddddd";//假设数据库无dddddd用户此处
ORA-01917: 用户或作用'DDDDDD'不存在
事务回滚失败,sql1成功执行,数据库增加aaa用户.
不知道是否有人能指点一二?
jdbc的Statement的事务问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- xhwwy 2010-03-11 13:30关注
一般的数据库中只有DML支持事务操作,所以能够回滚。DDL是不支持事务操作的。
但是也有数据库可以支持DDL事务,这样DDL也能回滚了,要查看具体的数据库文档。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 ubuntu子系统密码忘记
- ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
- ¥15 保护模式-系统加载-段寄存器
- ¥15 电脑桌面设定一个区域禁止鼠标操作
- ¥15 求NPF226060磁芯的详细资料
- ¥15 使用R语言marginaleffects包进行边际效应图绘制
- ¥20 usb设备兼容性问题
- ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
- ¥15 安装svn网络有问题怎么办
- ¥15 vue2登录调用后端接口如何实现