【正文】
總體性能 18% 的提高對(duì)我們的客戶真的非常有益。 我們希望在真正的基準(zhǔn)測(cè)試情景中看到同樣出色的測(cè)試結(jié)果。 end P。 a := b + c /* ...c not used except here */。 d := 42 /* constant assignment within a loop */。 d positiven:=1。 b positiven := 1。ENABLE:PERFORMANCE39。I39。 end P。 編譯器警告 create or replace procedure P ( i in out clob ) is begin i := 39。 / SP20804: Procedure created with pilation warnings Show Errors PLW06002: Unreachable code alter session set plsql_warnings = 39。 end if。debugging39。 編譯器警告 create or replace procedure P is debugging boolean := false。 SQL 小結(jié) ? Oracle 數(shù)據(jù)庫 10g SQL 引擎 – 聚合來自不同的分布式數(shù)據(jù)源的數(shù)據(jù)網(wǎng)格信息 – 無縫地集成 Java、 XML 和基本數(shù)據(jù)處理功能 – 一個(gè)全面的高性能和基于標(biāo)準(zhǔn)( SQL2022 W3C、J2SE、 POSIX 等)的特性集 – 簡(jiǎn)化的應(yīng)用程序開發(fā)、部署和管理 – RAS、 可管理性和安全性 議程 ? 新的 SQL 特性 ? 新的 PL/SQL 特性 ? PL/SQL 的速度是原來的兩倍 ? 總結(jié) ? 問答 新的 PL/SQL 特性 ? 剛才討論的所有 SQL 語言特性 ? FORALL 語句中的稀疏綁定數(shù)組 ? 編譯器警告 ? 新的 Utl_Mail 和 Utl_Compress 程序包 FORALL 語句中的稀疏綁定數(shù)組 ? 您的 PL/SQL 表最初是密集的, 例如,是由 BULK COLLECT 填充的 ? 您刪除了一些元素 ? 您想將這些元素插入到某個(gè)表中 forall j in INDICES OF sparse_emp_records BETWEEN lb AND ub optional insert into new_employees values sparse_emp_records(j)。 end if。member39。 a Tab_t := Tab_t ( 1, 2, 3, 4, 5 )。 categories(2,4) frequent set 嵌套表比較 ? Equal 和 Not Equal、 In、 Submultiset、 Member Of、 Empty 和 Is [Not] A Set SELECT * FROM customer c WHERE item_typ(2) MEMBER OF 。 insert into carts values(2, categories(2,4,6))。 / create table carts (c1 int, c2 categories) nested table c2 store as tb1_c2。 ? 在臨時(shí)表中支持 VARRAY 列 – 提供應(yīng)用程序開發(fā)靈活性 嵌套表增強(qiáng) ? 將一個(gè)不同的表空間用于嵌套表的存儲(chǔ)表 – 帶嵌套表的列的表可以在表空間之間分配 I/O 負(fù)載 CREATE TABLE purchase_orders ( order_items_column order_items_typ ) NESTED TABLE order_items_column STORE AS order_items_column_nt (TABLESPACE users)。 / CREATE TYPE _varray_typ AS VARRAY(5) OF _list_typ。 step My_Number。 pi My_Number。 prod_over_six My_Number。 root My_Number。 toler constant My_Number := 。 two constant My_Number := 。 zero constant My_Number := 。 step My_Number。 pi My_Number。 prod_over_six My_Number。 root My_Number。 toler constant My_Number := 。 two constant My_Number := 。 zero constant My_Number := 。 end E