国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本
首頁
|
新聞
|
娛樂
|
游戲
|
科普
|
文學
|
編程
|
系統
|
數據庫
|
建站
|
學院
|
產品
|
網管
|
維修
|
辦公
|
熱點
首頁
>
數據庫
>
Oracle
> 正文
EXECUTE IMMEDIATE用法小結
2020-07-26 14:32:59
字體:
大
中
小
來源:
轉載
供稿:網友
它解析并馬上執行動態的SQL語句或非運行時創建的PL/SQL塊.動態創建和執行SQL語句性能超前,EXECUTE IMMEDIATE的目標在于減小企業費用并獲得較高的性能,較之以前它相當容易編碼.盡管DBMS_SQL仍然可用,但是推薦使用EXECUTE IMMEDIATE,因為它獲的收益在包之上。
-- 使用技巧
1. EXECUTE IMMEDIATE將不會提交一個DML事務執行,應該顯式提交
如果通過EXECUTE IMMEDIATE處理DML命令,
那么在完成以前需要顯式提交或者作為EXECUTE IMMEDIATE自己的一部分.
如果通過EXECUTE IMMEDIATE處理DDL命令,它提交所有以前改變的數據
2. 不支持返回多行的查詢,這種交互將用臨時表來存儲記錄(參照例子如下)或者用REF cursors.
3. 當執行SQL語句時,不要用分號,當執行PL/SQL塊時,在其尾部用分號.
4. 在Oracle手冊中,未詳細覆蓋這些功能。
下面的例子展示了所有用到Execute immediate的可能方面.希望能給你帶來方便.
5. 對于Forms開發者,當在PL/SQL 8.0.6.3.版本中,Forms 6i不能使用此功能.
EXECUTE IMMEDIATE -- 用法例子
1. 在PL/SQL運行DDL語句
begin
execute immediate 'set role all';
end;
2. 給動態語句傳值(USING 子句)
declare
l_depnam varchar2(20) := 'testing';
l_loc varchar2(10) := 'Dubai';
begin
execute immediate 'insert into dept values (:1, :2, :3)'
using 50, l_depnam, l_loc;
commit;
end;
3. 從動態語句檢索值(INTO子句)
declare
l_cnt varchar2(20);
begin
execute immediate 'select count(1) from emp'
into l_cnt;
dbms_output.put_line(l_cnt);
end;
4. 動態調用例程.例程中用到的綁定變量參數必須指定參數類型.
主站蜘蛛池模板:
云安县
|
攀枝花市
|
镇沅
|
阆中市
|
集贤县
|
鹿邑县
|
巍山
|
吴旗县
|
湖口县
|
环江
|
枣阳市
|
横山县
|
卢湾区
|
乌拉特后旗
|
资溪县
|
郁南县
|
海丰县
|
边坝县
|
常山县
|
施甸县
|
合川市
|
哈密市
|
镇坪县
|
金坛市
|
海淀区
|
开封县
|
尼勒克县
|
红河县
|
雷山县
|
吴旗县
|
合作市
|
平阳县
|
合阳县
|
清镇市
|
固镇县
|
孟村
|
中江县
|
中阳县
|
宜春市
|
房产
|
鲁山县
|