本帖最后由 Xml_explorer 于 2010-05-20 20:47:20 编辑

解决方案 »

  1.   

    sql developer估计是自已解析了,SQL的分隔符为:;或/,这样分隔后一条一条地调用OCI执行
      

  2.   

    codearts的回答,我在想多个 sql一起执行的话,sql developer会分多个会话吗?
    如果是多个会话的话我的问题就没意思了。呵呵。我网上再找找资料看。
      

  3.   

    1、连接远程数据库,会开启分布式事务,所以要commit;
    2、pl/sql最终还是分别执行SQL和commit的;
    3、如果只是查询远程数据库的数据,可以使用物化视图,避免过多网络和连接资源。
      

  4.   

    请教tangren
    2、pl/sql最终还是分别执行SQL和commit的;
    我理解2句sql还是在同1个会话上完成的咯。我想每次执行完sql后都commit;
    3、我找找资料看。
      

  5.   

    远程数据库的数据先insert到本地数据库的表,再做提取操作。既能提高读取效率,也方便操作。
      

  6.   


    是在同一个session中执行的,但是会执行2次。每次执行SQL后都COMMIT: 这个有连接属性设置,把 autocommit 这个属性设成ON,执行DML后就自动COMMIT。但不知道SELECT会不会自动COMMIT;
      

  7.   

    codearts你说的自动commit是PLSQL Developer客户端软件哦。我要在程序上调用commit的。
      

  8.   


    是一个connection的属性,比你用ODBC连接到ORACLE,在ODBC中有相关的API设置这个连接的属性。 OCI也有相关的API来设置这个属性
      

  9.   

    我现在在考虑会话正常结束后关闭连接,应该会自动commit的;
    那远程访问应该也自动COMMIT;
      

  10.   

    是不是commit;提交的是当前数据库,而不是@do10