- 浏览: 403605 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (176)
- J2EE (24)
- Oracle (16)
- WebService (2)
- Other (11)
- 编译可添加参数 -keep-generated-actionscript=true (1)
- Log4 日志级别 (1)
- 汉字转拼音 (1)
- 定制文件提取和下载(提供多选) (1)
- soa suit update ip (1)
- IBM X3850 X5 系统安装 (1)
- XEN 虚拟化技术 (3)
- Windows 2003 (1)
- suse (1)
- solaris (1)
- weblogic (3)
- linux (2)
- solairs (1)
- os (1)
- oracle linux suse (1)
- Oracle Inventory Directory (1)
- 开启JBoss7的access_log功能 (0)
- jboss (2)
- 2013 (0)
- 2013-oracle-bpm (2)
- Oracle ERP (2)
- javascript (1)
- start shell command (1)
- PowerDesigner反向工程 mysql (1)
- http://it-ebooks.info/ (1)
- 快速上手RaphaelJS-Instant RaphaelJS Starter翻译(一) (1)
- web (1)
- 网站测速实用工具 (1)
- http://www.realvnc.com/download/vnc/5.1.1/ (1)
- 一次关于Waiting for table metadata lock的处理 (1)
- 64位系统下报libstdc++.so.6 GLIBCXX 错误 (1)
- http://baike.baidu.com/link?url=xB3rEIodVQXE7f4PACW9gi4rQeXvzwDirx8c1caiVny8VxqZHggyD3SLmJXV9_OH0jBi9xbY0toxg8noHn1O7a (1)
- MyEclipse (1)
- 探索Eclipse的OSGi控制台 (1)
- http file server (1)
- ZooKeeper-3.3.4集群安装配置 (1)
- 使用Zookeeper实现分布式共享锁 (1)
- http://blog.sina.com.cn/s/blog_7cd4dd3e0101e1rd.html (1)
- http://blog.csdn.net/chenyi8888/article/details/6626302 (1)
- http://www.cnblogs.com/qinwanlin/archive/2012/12/03/2797339.html (1)
- Apache Felix环境配备 (1)
- 安装Subversion1.82(SVN)插件 (1)
- Maven 打包war包 (1)
- squid (1)
- Nginx 做反向代理,后端是 tomcat,chrome 浏览器访问项目时加载大文件失败 ERR_CONTENT_LENGTH_MISMATCH: (1)
- master and slave have equal MySQL server UUIDs 解决方法 (1)
- 分享6个目前国内优秀的Java开源项目----后台管理框架,值的收藏 (1)
最新评论
-
Aceslup:
嗯,已经知道解决方法了。需要JDK环境。
VisualVM指定JDK环境启动 -
静夜独窗:
很好,收藏,有时间好好看看
JVM那些事(heap&stack) -
LoveJavaMM:
你好,看了你的文章有点疑问
第一:
vi /etc/pam. ...
suse 11 telnet 和 ftp安装开通端口 -
方块石:
老兄,解压的要输入内容,是啥子
ant脚本部署war包全过程~~ -
hy158753228:
LZ有遇到过这个问题么:
我安你的说法安装了插件,打开一个.c ...
MyEclipse 8.6反编译插件安装
今天在数据库连接字符串中看到了selectMethod=cursor
知道了这个用法如下:
作用:以利用服务器端的游标加快速度
使用情况:
1.执行多个Statements的操作的时候用
2.需要手动使用事务的时候使用
以上是在使用sqlserver数据库的连接字符串的时候使用过。
例如:jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=071008_03;SelectMethod=cursor
但是今天我将其用在oracle数据库的时候,却报出了一下的错误信息:
Io 异常: Connection refused(DESCRIPTION=(TMP=)(VSNNUM=169869824)(ERR=12505)(ERROR_STACK=(ERROR=(CODE=12505)(EMFI=4))))
这是个老话题,2002年在使用ejb的bmp就遇到了这个问题
连接数据库成功之后,想在一个事务中初始化多个预处理句柄时报错
dbConn.setAutoCommit(false)
for (int i = 0; i < 5; i++) {
pstmt[i] = dbConn.prepareStatement(strPreSQL[i]);
错误提示:
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Can't start manual transaction mode because there are cloned connections
怀疑MS SQL不能在一个事务中建多个预处理句柄
Resolution:
You have to add a property to the pool definition, something to do with selectMode=cursor or selectMethod=cursor. Check the driver documentation. Otherwise the driver will not allow more than one statement per connection at any given time
微软的专家告诉的
This error occurs when you try to execute multiple statements against a SQL Server database with the JDBC driver while in manual transaction mode (AutoCommit=false) and while using the direct (SelectMethod=direct) mode. Direct mode is the default mode for the driver."
import java.sql.*;
import java.io.*;
public class Repro{
public static void main(String args[])
{
try {
Connection con;
Statement s1 = null;
ResultSet r1 = null;
Statement s2 = null;
ResultSet r2 = null;
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
con = DriverManager.getConnection(
"jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs;SelectMethod=Direct;User=User;Password=Password");
//fix 1
//"jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs;SelectMethod=Cursor;User=User;Password=Password");
con.setAutoCommit(false);
try {
s1 = con.createStatement();
r1 = s1.executeQuery("SELECT * FROM authors");
//fix 2
//r1.close();
//s1.close();
s2 = con.createStatement();
r2 = s2.executeQuery("SELECT * FROM publishers");
}
catch (SQLException ex)
{
System.out.println(ex);
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
}
用SQL Server驱动一次select很多数据最好在connection string中加上SelectMethod=Cursor,以利用服务器端游标加快速度,其实不只sqlserver,oracle的jdbc,只要使用PreparedStatement,驱动默认就使用游标,sqlserver则不然,必须使用SelectMethod=Cursor才打开游标。
这点在使用jotm时,并且使用Xapool时,必须修改DataSourceFactory,把PreparedStatementPool禁掉,否则记录插的太快了,很可能是游标没来得及关闭
即使不使用jotm,大量向oracle插入数据,例如每毫秒1条,也会引发游标用完,所以大量插入数据时,应该使用oracle的批处理batchupdate.
可惜的是,微软的sqlserver的jdbc驱动不支持这个属性
发表评论
-
java jdk 下载地址
2012-01-17 14:14 1054jre http://java.com/zh_CN/down ... -
myeclipse插件汇总积累
2011-06-17 21:53 11131. tomcat插件: http://www.eclip ... -
[转]css3
2011-05-03 14:53 1315作为一个Web开发者,保持对未来Web标准的关注、学习和了解是 ... -
IE&FF兼容性
2011-04-04 17:33 12511. document.form.item 问题 (1)现 ... -
MyEclipse 8.6反编译插件安装
2011-01-08 16:03 9385第一步: 下载j ... -
QC邮件转发工具Mail Direct安装配置手册
2010-11-01 13:57 5028转 + > http://blog.163.com/k ... -
solaris机器操作....
2010-06-30 21:29 14031. 查看用户所在的组cat ... -
java反编译工具~
2010-06-11 20:10 933前几天从同事那里弄来一个很不错的java反编译工具。感觉有起来 ... -
收藏的URL
2010-02-25 17:19 10151. eclipse中反编译插件jadClipse http ... -
使用 Telnet 端口 25 测试 SMTP 通信
2010-02-24 17:10 2982From: http://www.cnitblog.com/w ... -
操作log4jAPI
2009-11-12 10:58 1215import java.io.ByteArrayOutputS ... -
Eclipse 插件
2009-10-15 10:09 13111. commons4e 插件. 这个Eclipse插件方便 ... -
最近公司内网打不开myeclipse官网
2009-06-25 09:17 2198最近想上官网下载些东西, 一直都打不开。后来使用代理 ,终 ... -
ant脚本部署war包全过程~~
2009-06-17 17:38 3849最近写了一个部署打包的ant,功能真强大,自动更新svn源码, ... -
自动生成toString方法.
2008-12-07 16:23 2102package com.zte; import java.la ... -
sqlplus如何执行command脚本。
2008-10-26 11:27 1906打开sqlplus,file->open->com ... -
使用ant 自定义复制指定文件
2008-09-08 15:19 3688//CopyFile.java类文件 import ... -
Hibernate 的 batch_size 与事务
2008-09-04 14:56 1534batch_size 即同时提交数据的数量,原本与事务并没有什 ... -
关于FastHashMap...
2008-09-02 10:51 2652今天在开发过程中碰到了一处使用了beanutil中的fasth ... -
Sqlplus中编译java需添加jar包的命令!
2008-08-20 17:52 1559loadjava -user user/pwd@sid pat ...
相关推荐
- `SelectMethod=Cursor`: 查询方法设置为游标方式。 ##### 4. 创建连接 ```java private static Connection con = null; Statement stmt = null; ResultSet rs = null; public connectURL() { try { if (con ...
SelectMethod=cursor" username="sa" password="" maxActive="10" maxIdle="100" maxWait="10000" /> ``` 其中: - `name`是JNDI名称,遵循`jdbc/工程名`的格式。 - `password`和`username`分别是数据库的...
它的读写速度极快,支持多种数据结构如字符串、哈希、列表、集合和有序集合。连接Redis通常使用Redis客户端库,如Python的`redis`库。连接步骤如下: ```python import redis # 创建连接 r = redis.Redis(host='...
以下是一个示例的JDBC连接字符串: ```properties jdbc.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver jdbc.url=jdbc:sqlserver://127.0.0.1:1444;databaseName=fax;selectMethod=cursor; ``` ...
response.write \"数据库连接出错,请检查conn.asp中的连接字符串。\" response.end end if function CloseDB Conn.Close set Conn=Nothing End Function %> dim badword badword=\"\'|and|select|update|...
SelectMethod=Cursor",指明了数据库服务器的地址和端口、使用的数据库名以及查询方式。 5. Java中执行SQL语句: 使用Statement对象来执行SQL查询。需要注意的是,由于可能需要执行多次查询,所以创建了多个...
SelectMethod=cursor;DatabaseName=pubs <property name="connection.driver_class">com.microsoft.jdbc.sqlserver.SQLServerDriver</property> <property name="connection.username">sa <property name=...
* Replace: 替换,用于将字符串中某个字符或字符串替换为另一个字符或字符串。 * Split: 分割,用于将字符串分割成多个子字符串。 * Substr: 截取字符串,用于截取字符串的某一部分。 * ToLowerCase: 转换为小写,...
/// 格式后的异常信息字符串,包括异常内容和跟踪堆栈. /// /// public static String FormatException(Exception ex, String catchInfo) { StringBuilder strBuilder = new StringBuilder(); if ...
它的数据类型包括整型、浮点型、字符串、布尔型以及列表、元组、字典等复合类型。变量声明无需指定类型,动态类型使得代码更加灵活。控制流语句如if-else、for、while等用于实现逻辑判断和循环。此外,Python还提供...
/// 格式后的异常信息字符串,包括异常内容和跟踪堆栈. /// /// public static String FormatException(Exception ex, String catchInfo) { StringBuilder strBuilder = new StringBuilder(); if (catchInfo != ...
$b :字符串连接 逻辑和比较 逻辑运算符有: $a || $b :或 $a or $b :或 $a && $b :与 $a and $b :与 $a xor $b :异或 (当$a或$b为true时为true,两者一样时为false) ! $a :非 比较运算符有: ...
例如,你可以创建一个通用的DAO类,它接收SQL字符串作为输入,然后利用反射调用特定的CRUD方法。 **OracleProc.txt**: 这个文件可能包含Oracle数据库的存储过程定义或者调用存储过程的示例。在Java中,我们可以...
- **字符串**:由一系列字符组成的数据类型。可以进行拼接、分割等操作。 - **布尔**:表示真或假的值,通常用于逻辑判断。 - **元组**:不可变序列,一旦创建后无法更改。例如,`t = (1, 2, 3)`。 - **列表**:可变...
8. GET请求:在HTML表单中,若要将数据以字符串方式附加在URL后面提交,需要将`<form>`标签的`method`属性设置为`GET`。 9. 表文件名:在某些数据库操作中,如FoxPro,`Number="3" File="file" + Number Use &File`...
--字符串加解密,返回一串32位长的字符串 --Select UTL_INet.f_MD5( 'TestPassword' ) From Dual; Function f_MD5( as_SourceStr in Varchar2 --需要加密的字符串 ) Return Varchar2; --将Email地址...
当尝试将非数字字符串转换为数字类型时,系统会抛出`INVALID_NUMBER`(ORA-01722)异常。 **解决方法:** 1. **验证输入**:确保所有用于数值计算的输入都是有效的数字格式。 2. **使用TRY/CATCH结构**:通过TRY/...