不同数据库下的可更新结果集问题
来源:互联网 发布:淘宝补单靠谱吗? 编辑:程序博客网 时间:2024/05/19 17:56
前言
首先需要清楚什么是可更新结果集概念:通俗点来讲就是,sql查询结果集是否是可以更新的。【关于结果集的类型,此处不做详细介绍】
正文
首先看以下代码片段:
PreparedStatement ps = conn.prepareStatement(sql, ResultSet.TYPE_SCROLL_SNESITIVE, ResultSet.CONCUR_UPDATABLE);//示例参数ps.setParam(1, value);ps.setParam(2, value);//查询ResultSet rs = ps.executeQuery();//更新结果集if(re.next()) {//更新值rs.updateInt(1, 999);rs.updateString(2, "xxx");//更新行rs.updateRow();}对于这样的一处代码块,实现结果集更新,有几点需要注意:1. 查询sql避免使用select * 的形式,写明查询字段
2. 查询sql避免表关联
另,对于不同的数据库,又稍有区别:
1. oracle
oracle在查询的时候,会默认rowid来区分记录行,所以可以不用在查询sql中显式的查询表主键,就可以实现更新
2. mysql
mysql查询时,没默认标识,需显式的查出表主键,以实现更新
3. sql server
sql server在查询的时候,通过测试,也有默认机制,可以不显式的查出主键字段,就可以更新。但是没弄清楚具体默认机制,等待后续探究更新。
以上是关于可更新结果集,在不同数据库下的细微区分,做下记录,以便后续查看。
如有不对的地方,欢迎大家拍砖o(∩_∩)o
1 0
- 不同数据库下的可更新结果集问题
- java数据库编程——可滚动和可更新的结果集
- jdbc 可更新的结果集
- 可滚动、可更新的结果集(转)
- ResultSet可滚动和可更新的结果集/
- JAVA高级【4.5】《Java核心技术2》数据库-读写LOB、可滚动和可更新的结果集、元数据
- jdbc 可更新结果集
- JDBC之处理可滚动的结果集和可更新的结果集
- 可更新结果集的使用需满足的条件
- 在JDBC中处理可更新的结果集
- ResultSet进阶——可更新的结果集
- Java JDBC 学习笔记 - 可更新的结果集
- jdbc 可滚动的结果集,可更新例子学习记录
- 学习之路3----ResultSet可滚动和可更新的结果集
- JDBC-结果集的特性(是否可滚动、是否敏感、是否可更新)
- ASP.Net下如何解决关于Access数据库“操作必须使用一个可更新的查询”问题
- 第二十七章 可更新和对更新敏感的结果集
- 数据库数据更新,不同表,不同数据库的更新方式
- Oracle常用总结
- 输入框被键盘遮挡问题
- 安卓 notification 使用pendingintent传值时传值重复或无效的问题
- Java序列化
- android Activity生命周期
- 不同数据库下的可更新结果集问题
- xcode 4 导入Lib,Framework的方法,和Undefined symbols for architecture x86_64:的一种解决办法
- java----for 与 for-each
- ViewPager的用法
- Kafka->SparkStreaming
- Android ViewPager+Fragment 模式中 Fragment的返回键的处理
- CSS,给我们不一样的体验
- 关于 UITableViewCell 的重用,需注意:
- Lua:编译安装LuaJIT,第一个Lua程序