如何獲取或記錄Oracle語句執行時間
很多情況下我們需要獲取或記錄Oracle語句執行時間,其實簡單的方法就能實現,具體代碼如下: OracleE語句的執行時間需要使用 SET TIMING ON,例如: [oracle@jw ~]$ sqlplus "/as sysdba"SQL*Plus: Release 9。
2。0。
4。0 - Production on 星期二 8月 28 16:59:43 2007Copyright (c) 1982, 2002, Oracle Corporation。
All rights reserved。連接到: Oracle9i Enterprise Edition Release 9。
2。0。
4。0 - ProductionWith the Partitioning, Oracle Label Security, OLAP and Oracle Data Mining optionsJServer Release 9。
2。 0。
4。0 - ProductionSQL> set timing on;SQL> select count(*) from tab;COUNT(*)----------2447已用時間: 00: 00: 00。
12SQL>。
怎樣看oracle查詢語句執行計劃
SQLPLUS的AutoTrace是分析SQL的執行計劃,執行效率的一個非常簡單方便的工具,在絕大多數情況下,也是非常有用的工具。
1。如何設置和使用AUTOTRACE SQL> connect / as sysdba SQL> @?/rdbms/admin/utlxplan。
sql Table created。 SQL> create public synonym plan_table for plan_table; Synonym created。
SQL> grant select,update,insert,delete on plan_table to public; Grant succeeded。 SQL> @?/sqlplus/admin/plustrce。
sql SQL>grant plustrace to public。 2。
理解和使用AutoTrace 對于SQL 調整,使用Autotrace是最簡單的方法了,我們只需要做: SQL>SET AUTOTRACE ON 我們就可以看到我們SQL的執行計劃,執行成本(PHYSICAL READ/CONSISTENT READ。 。
。) 加上SET Timing On或者Set Time On,我們可以得到很多我們需要的數據。
然后在toad里面對某一條sql語句按下Ctrl+e就可以看到這條語句的執行計劃了。
獲取ORACLE語句執行時間方法是什么呢
有時候我們需要獲取或記錄ORACLE語句執行時間,其實簡單的方法就能實現,看下面的代碼: ORACLE語句的執行時間需要使用 SET TIMING ON,例如: [oracle@jw ~]$ sqlplus "/as sysdba" SQL*Plus: Release 9.2.0.4.0 - Production on 星期二 8月 28 16:59:43 2007 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 連接到: Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production With the Partitioning, Oracle Label Security, OLAP and Oracle Data Mining options JServer Release 9.2.0.4.0 - Production SQL> set timing on; SQL> select count(*) from tab; COUNT(*) ---------- 2447 已用時間: 00: 00: 00.12 SQL>。
怎么在Oracle中寫執行sql的sql語句
可以使用 execute immediate
--FYI
--execute immediate不支持多行返回,如果需要可新建臨時表
declare
v_source_sql varchar2(1000);
v_union_sql varchar2(1000);
begin
select column_name into v_source_sql from table_name ;--get source sql
v_union_sql='select * from tablename2,('||v_source_sql ||') h where 。。';--sql str
-- 之前先創建好所需字段的temp_table
execute immediate('insert into temp_table '||v_union_sql );
--在臨時表中就是你所需要的數據。
exception 。
--如果只是需要返回單行數據,則可將execute immediate嵌入在sql中使用
--execute immediate str into parameter1 ,parmeter2。--返回參數
where column=:parameter。.條件參數
--
-我說的很仔細吧:) 今天心情好
end;
轉載請注明出處華閱文章網 » 執行oracle語句