first analyze table xx compute statistics then select

解决方案 »

  1.   

    1.执行脚本utlxplan.sql(Oracle\ora81\rdbms\admin下)
    2.explain plan for select 

      set autotrace on;
       select..........
    3.执行脚本:utlxplp.sql或者(utlxpls.sql)
      

  2.   

    利用系统的任务计划+存储过程来完成一些由时间触发的事件实现步骤:
        1、先写好一个存储过程,例如:test.
        2、打开记事本输入:exec  test; exit,保存为test.sql(名称可以任意)。
        3、再新建一个文件输入:sqlplus 服务器名称/用户名@密码 @test.sql ,保存为test.bat(名称可以任意)。
        4、打开系统的任务计划,新建一个任务,在里面设置好触发的时间,就OK了。
        
    这个方法可以用做ORACLE数据库环境下,定时执行存储过程的方法。类似于在SQLSERVER数据库下的定时任务。
    其中楼主的方法有一处需要更正一下,步骤三:
    在使用SQLPLUS调用一个SQL文件的具体命令参数如下:
    SQLPLUS <user>/<password><@servername>  <@filename>
    其中user为数据库登录用户,password为用户密码,servername为NET服务名,也称ORACLE下的例程名,filename为要执行的sql文件,其中调用的任何表、视图、存储过程都必须是隶属于user角色下的,否则将执行失败。以下是一个例子:
    sqlplus system/manager@server  @c:\test.sql
    注意:为确保可以顺利执行test.sql文件,请给出完整路径。