Oracle 11 G New Features
Oracle 11 G New Features
Transparent performance:
• Don’t forget that the “4068” family of errors has a different cause:
recompiling at least one stateful package body that a second
concurrent session has instantiated
<Insert Picture Here>
Performance “knob”:
Performance “knob”:
Intra-unit inlining
The challenge
readability/correctness/maintainability
versus
performance
The challenge
is
...
begin
select a, m into r1.a, r1.b from ...;
before statement is
begin
...
end before statement;
after statement is
begin
null;
end after statement;
end My_Compound_Trg;
/
The compound trigger
create trigger My_Compound_Trg
for update of Salary on Employees
compound trigger
procedure Flush_Array is
begin
forall j in 1..Emps.Count()
insert into Employee_Salaries values Emps(j);
Emps.Delete();
Idx := 0;
end Flush_Array;
...
end My_Compound_Trg;
/
The compound trigger
create trigger My_Compound_Trg
for update of Salary on Employees
compound trigger
...
...
end My_Compound_Trg;
/
The compound trigger
create trigger My_Compound_Trg
for update of Salary on Employees
compound trigger
...
after statement is
begin
Flush_Array();
end after statement;
end My_Compound_Trg;
/
<Insert Picture Here>
Functionality:
Functionality:
Functionality:
p := '\(?\d{3}\)? ?\d{3}[-.]\d{4}';
Str :=
'bla bla (123)345-7890 bla bla
(345)678-9012 bla bla (567)890-1234 bla bla';
• OK, there was at least one match. But how many are
there?
Functionality:
• ANSI describes it
• If you don’t know what this is, you don’t need it!
<Insert Picture Here>
Functionality:
begin
:New.ID := My_Seq.Nextval;
end;
/
...
...
end loop;
end loop;
create function f(
p1 in number default 1,
...,
p5 in number default 5) return number
is
v number
begin
...
return v;
end f;
/
select f(p4 => 10) from Dual
/
ORA-00907: missing right parenthesis
Named and Mixed Notation from SQL
Tool support
PL/Scope
create or replace...
select Name,
Type,
Usage,
Usage_ID,
Usage_Context_ID,
Signature
from User_Identifiers
Summary
Summary
• Performance
• Finer grained dependency tracking
• Intra-unit inlining
• Functionality
• Dynamic SQL functional completeness
• DBMS_Sql security
• Usability
• Sequence in a PL/SQL expression
• New package
• DBMS_Parallel_Execute
• Tools
• PL/Scope
www.oracle.com/technetwork/database/features/plsql
<Insert Picture Here>
Q&A