社区
Oracle
帖子详情
xxx.nextval怎么保存?
sxtysl
2009-04-13 02:55:33
OracleParameterCollection sqlParams = theCommand.Parameters;
sqlParams.Add(new OracleParameter(":id", OracleType.number).Value = seq1+".nextval";
...全文
124
7
打赏
收藏
xxx.nextval怎么保存?
OracleParameterCollection sqlParams = theCommand.Parameters; sqlParams.Add(new OracleParameter(":id", OracleType.number).Value = seq1+".nextval";
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mumu_java
2009-04-14
打赏
举报
回复
否则你要专门为了得到这个nextval而访问一次数据库。然后把这个值放入你的参数列表中。
select xxx.nextval from dual;
mumu_java
2009-04-14
打赏
举报
回复
这个是一个sequence的下一个值,要想放到参数里,必须先取出来,在放入参数中。其实建议lz不要这样,根本没有必要。只要在执行的sql语句中直接获得就可以了。
select * from t_name t where t.id = xxx.nextval;
superhsj
2009-04-13
打赏
举报
回复
先把序列值存到变量里,传参数的时候用变量传给id
sxtysl
2009-04-13
打赏
举报
回复
如果就是想sqlParams.Add(new OracleParameter(":id", OracleType.number).Value = seq1+".nextval"; 这样赋值是不是没有解决办法?
sxtysl
2009-04-13
打赏
举报
回复
您的意思是先取得值。在赋值?
oracledbalgtu
2009-04-13
打赏
举报
回复
先执行select xxx.nextval from dual获取序列的值,然后再赋值.
[Quote=引用楼主 sxtysl 的帖子:]
OracleParameterCollection sqlParams = theCommand.Parameters;
sqlParams.Add(new OracleParameter(":id", OracleType.number).Value = seq1+".nextval";
[/Quote]
sxtysl
2009-04-13
打赏
举报
回复
我保存时报错了。是不是不能这样写呢?
ORACLE PL/SQL 实例精解之第三章 PL/SQL中的SQL
本文探讨了在PL/SQL中如何使用DML(数据操纵语言)进行变量赋值,包括初始化和SELECT...INTO语句的使用。同时,深入讲解了如何在PL/SQL中利用序列获取和递增数值,以及如何通过SAVEPOINT、COMMIT和ROLLBACK进行事务管理,确保应用程序只
保存
正确的数据。
MySQL相关语句使用注意点
文章详细介绍了MySQL中resultType和paramType的区别,XML的CDATA用法,jdbcType的作用,日期转换函数to_date和to_char,CASEWHEN语句的使用,count函数的比较,IFNULL函数处理NULL值的方法,decimal类型对精度的保持,selectKey标签的order属性影响,以及func_next
val
获取序列值。此外,还提到了代码注释规则和Java项目中的包结构组织。
MyBatis-Plus的saveBatch批量插入为何效率很低,耗时很长,怎么解决?
本文探讨了在使用MyBatis-Plus进行批量插入时遇到的效率问题,尤其是在MySQL和Oracle数据库中的表现。针对MySQL,通过配置rewriteBatchedStatements属性可以显著提高批量插入速度。然而,Oracle数据库中,@KeySequence注解会导致大量额外的序列查询,严重影响性能。作者通过测试发现,去除@KeySequence并手动设置ID,或者自定义XML插入语句可以有效优化。文章还提到了其他解决方案,如使用触发器、存储过程等,但各有优缺点。最后,作者强调在选择框架时要权衡利弊,并欢迎读者分享更多解决方案。
MyBatis-Plus的saveBatch批量插入为何效率很低耗时长详解及解决方案
本文主要探讨了MySQL和Oracle数据库在批量插入数据时的效率问题。针对MySQL,通过在数据库连接URL添加`rewriteBatchedStatements=true`属性,可以显著提升saveBatch的执行速度。然而,Oracle数据库的批量插入效率低下问题较为复杂,主要是由于MyBatis-Plus的主键序列生成策略导致的额外查询。作者通过去除@KeySequence注解并手动设置ID,成功减少了数据库交互次数,从而提高了插入性能。文章还提供了多种解决方案,包括自定义SQL、使用触发器、主键生成策略等,并推荐了最优解,即在XML中定义自己的insert语句,避免MyBatis-Plus的默认主键生成策略。
Oracle 在高并发的情况下,插入主键ID时,报:违反唯一约束条件
本文介绍在多人同时提交数据时遇到的唯一约束错误及其解决方案。通过采用序列方法插入ID,可以有效避免因ID重复而导致的问题,并提供了两种不同场景下的具体实现方式。
Oracle
17,134
社区成员
55,258
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章