Oracle 11g a introdus multe caracteristici noi în SQL & PL / SQL, care sunt foarte utile pentru un dezvoltator cat și pentru un DBA. Dintre acestea menționez câteva caracteristici mai importante:

  1.  Compound Triggers: Un Trigger compus reprezinta patru declanșatori diferiți definiți ca fiind unul singur. Nu numai că se economisește foarte mult cod de scris, dar, de asemenea, rezolvă problema în cazul în care același set de variabile de sesiune împart aceleași date.
  2. Trigger Follows/Precedes Clause: Sintaxa Oracle 11g de declanșare include acum clauzele Follows / Precedes pentru a garanta ordinea de execuție a Triggere-lor definite cu același punct de sincronizare. Clauza Follows precizează că Trigger-ul curent ar urma executării Trigger-ului specificat.
  3. Crearea unui Trigger în mod DISABLE: Oracle 11g oferă flexibilitate pentru a crea un Trigger în modul DISABLED. Trigger-ul rămâne dezactivat până când va fi alterat în modul ENABLE. Înainte de Oracle 11g, un Trigger putea fi creat numai în modul ENABLE.
  4. Read Only Tables: În Oracle 11g, o tabelă poate fi setată în modul Read Only pentru a restricționa operațiunile de scriere. Ulterior aceasta va putea fi modificată pentru a comuta pe modul READ ONLY și READ WRITE.
  5. Invisible Indexes: Un index invizibil este ignorat de optimizator, cu excepția cazului în care ați setat în mod explicit parametrul de inițializare OPTIMIZER_USE_INVISIBLE_INDEXES la TRUE sau folosiți Hint-ul INDEX. Indexul invizibil este o alternativă la modul inutilizabil. Acesta poate fi convertit la modul VISIBLE pentru examinarea automata de optimizator.
  6. Virtual Columns: Oracle 11g vă permite să creați o „coloană virtuală”, o coloană goală care conține o funcție pe o altă coloană a unei tabele, funcția în sine este stocată în dicționarul bazei de date. Ele vor avea același comportament ca și alte coloane din tabele în ceea ce privește indexarea și statisticile.
  7. Continue Statement: Declarația „continue” trece control la următoare iterația.
  8. LISTAGG Analytic Functions: Funcția analitică LISTAGG este folosita pentru a agrega setul de rezultate în mai multe rânduri într-o singură coloană.
  9. REGEXP_COUNT: Oracle 11g introduce expresia regulată REGEXP_COUNT, folosită pentru a număra apariția unui caracter sau expresie într-un alt șir.
  10. Pivot and Unpivot: Operatorul PIVOT ia datelor din rânduri separate, le agreghează și le convertește în coloane. Operatorul UNPIVOT convertește coloana pe bază de date în rânduri separate.
  11. Result Cache: Oracle 11g a introdus o nouă componentă în SGA –  – Shared Pool as Result Cache pentru a păstra rezultat unei interogări SQL și rezultatul funcțiilor PL / SQL. Păstrând în memorie rezultatele interogărilor, Oracle poate evita necesitatea de a repeta operațiunile consumatoare de timp.
  12. Pragma Inline: Un nou Pragma a fost introdus pentru a specifica dacă apelul unui subprogram trebuie să fie inline sau nu. Inline înlocuiește apelul unui subprogram cu o copie a apelului subprogramului.
  13. Direct Sequence Assignment: Înainte de Oracle 11g, asignarea unei secvente la un număr variabil putea fi realizată numai printr-o instrucțiune SELECT, care necesita trecerea contextului de la engine-ul PL / SQL la cel SQL. De la Oracle 11g, putem atribui în mod direct o valoare secvență la o variabila PL / SQL.
  14. SIMPLE_INTEGER Data Type: Oracle 11g a proiectat un nou tip de date SIMPLE_INTEGER, SIMPLE_FLOAT și SIMPLE_DOUBLE. Ele sunt compatibile cu compilarea nativă în Oracle 11g, ceea ce sprijină punerea lor în aplicare mai rapidă.
  15. Recursive Subquery Factoring: Versiunea 11g release 2 a introdus factoring recursiv a unei subinterogări sau recursivitatea cu clauză. Aceasta este o extensie a sintaxei SQL cu care se pot face interogări recursive / ierarhice.
  16. Calling Functions: În Oracle 11g, funcțiile pot fi apelate folosind numele, notația pozițională și mixte în timp ce sunt interogate dintr-o interogare SQL SELECT.
  17. DDL Wait Option: În Oracle Database 11g, folosind parametrul ddl_lock_timeout, când într-o sesiune o declarație DDL ajunge la „exclusive lock”, acesta nu va returna erore. În schimb, acesta va aștepta secundele specificate în parametrul ddl_lock_timeout. În acele secunde, Oracle continuu va reîncearca operațiunea DDL până când va fi executata cu succes sau expirară intervalul de timp.
  18. Deprecation of SQL Plus: Oracle a depreciat utilizarea SQL Plus (isqlplus și sqlplusw) de la 11g. Oracle 11g suporta SQL plus, prin linia de comandă dar recomandă utilizarea SQL Developer.
  19. New PL/SQL Compiler Warning: Oracle Database 11g are un nou avertisment numit PLW-06009 pentru a te avertizez „dangerous practice of leaving the WHEN OTHERS THEN NULL” în timpul compilării. Pentru a activa aceste avertismente va trebui să setați parametrul de sesiune plsql_warnings = ‘enable:all’

One comment

Lasă un răspuns

Completează mai jos detaliile despre tine sau dă clic pe un icon pentru autentificare:

Logo WordPress.com

Comentezi folosind contul tău WordPress.com. Dezautentificare / Schimbă )

Poză Twitter

Comentezi folosind contul tău Twitter. Dezautentificare / Schimbă )

Fotografie Facebook

Comentezi folosind contul tău Facebook. Dezautentificare / Schimbă )

Fotografie Google+

Comentezi folosind contul tău Google+. Dezautentificare / Schimbă )

Conectare la %s