如题!连接=New Connection(连接字符串)
//一
连接.Open
执行SQL
连接.close //此处关闭了,我再Open并执行SQL语句,会话是新创建的还是上次的?//二
连接.open
连接.BeginTransaction
执行SQL
连接.Commit //此处Commit了,我再Open、BeginTransaction并执行SQL语句,会话是新创建的还是上次的?
连接.close但是对Oracle的会话不怎么理解,望各位解惑!!谢谢
//一
连接.Open
执行SQL
连接.close //此处关闭了,我再Open并执行SQL语句,会话是新创建的还是上次的?//二
连接.open
连接.BeginTransaction
执行SQL
连接.Commit //此处Commit了,我再Open、BeginTransaction并执行SQL语句,会话是新创建的还是上次的?
连接.close但是对Oracle的会话不怎么理解,望各位解惑!!谢谢
解决方案 »
- oracle两个表中结构一样数据数量不同怎么才能整合在一起
- 创建JOB时候遇到的问题,以前从未遇到
- 我在建Oracle表的时候,建了分区.为什么只能够建一个?请帮忙看看
- 当其中一行被锁后,如何自动选择其他的行
- Oracle 9i安装问题:无法确定主机IP地址(急!!!)
- oracle9i中要将table建在哪个空间?才能让一般的用户(user1)以normal的身份查询到?
- 关于新建用户A找不到其它用户B下面的表的问题
- 关于IMP导入数据的BUG!
- oracle tns:12571 包写入程序失败
- MySQL安装出线问题
- TRUNCATE TABLE 报错!
- oracle连接lombozeclipse
连接=New Connection(连接字符串)
//一
连接.Open
执行SQL
连接.close //此处关闭了,我再Open并执行SQL语句,会话是新创建的还是上次的?--答:由于connection已经关闭,再open并执行SQL,会话是新创建的,就跟在SQLPLUS中,当用户输入用户名和密码并确认时,经过数据库验证并建立connection,连接建立的同时该用户也建立了一个session,不过此时session为inactive状态,当用户session发送SQL语句时,session被激活,SQL语句通过connection传送到server process,进而传送到instance进行处理。connection是物理上的,而session是逻辑上标识不同用户的,在建立connection的同时自动开启了一个session.开启一个连接就对应了一个session,如果连接关闭了,即此次会话就结束了,重新连接那么对应的是另一个session。//二
连接.open
连接.BeginTransaction
执行SQL
连接.Commit //此处Commit了,我再Open、BeginTransaction并执行SQL语句,会话是新创建的还是上次的?
连接.close--答:在同一个连接内,不同的事务是共处一个session的,就跟在SQLPLUS中一个session存在多个事务一样。对于事务,commit或是rollback,该事务就结束,然而此时连接还在,即session也在。
跟事务没有关系
二:是原來的會話session跟transaction無關