SQL și crearea și executarea de scripturi - totul despre el și programare

Pagina 18 din 29

Interacțiunea SQL * Plus cu utilizatorul

Mecanismul standard pentru interogarea valorilor variabilelor utilizatorului vă oferă mijloace limitate de a interacționa cu valorile introduse de utilizator ca răspuns la solicitările standard. Utilitarul SQL * Plus vă permite să controlați ieșirea mesajelor și să interogați valorile variabilelor.

Comanda PROMPT

Pentru a scoate textul arbitrar pe ecran, utilizați comanda PROMPT cu următoarea sintaxă:

Emite textul specificat sau un șir gol (când este apelat fără parametri). Dacă trebuie să emiteți mai multe linii, o comandă separată PROMPT este executată pentru fiecare rând.

Comanda ACCEPT

Citiți șirul și stocați-l în variabila de utilizator specificată de un anumit tip (emite, dacă este necesar, o invitație) permite comanda ACCEPT cu următoarea sintaxă:

Dacă variabila utilizator specificată în comanda ACCEPT nu există, SQL * Plus o creează. Opțiunile de comandă ACCEPT sunt descrise în tabelul următor. 14.

Tabelul 14. Opțiunile de comandă ACCEPT.

Luați în considerare un exemplu simplu de partajare a comenzilor PROMPT și ACCEPT. Să avem dosarul de comandă splus1.sql cu următorul conținut:

Iată ce se întâmplă atunci când o executați:

Comanda PAUSE

Comanda PAUSE vă permite să așteptați confirmarea că utilizatorul a citit mesajul de pe ecran emis de comanda PROMPT. Pentru a confirma, trebuie să apăsați Enter, după care scriptul sau sesiunea SQL * Plus continuă.

Comanda PAUSE are următoarea sintaxă:

Această comandă produce un șir gol, apoi un rând de text, dacă este specificat, sau un alt șir gol și așteaptă confirmarea de la utilizator. Această comandă așteaptă comanda de la terminal (în timpul lansării interactive), chiar dacă fluxurile de intrare și ieșire sunt redirecționate. Când lucrați în modul batch, pentru a continua, aveți nevoie de o linie nouă în fișierul de la care se efectuează fluxul de intrare.

Să luăm în considerare un exemplu simplu. Schimbați dosarul splus1.sql după cum urmează:

Iată ce va fi emis atunci când este executat:

Pentru a obține rezultate, a trebuit să apăs tasta Enter după ce a fost afișat mesajul corespunzător.

Trebuie înțeles că fragmentarea tabelelor este diferită de fragmentarea fișierului. Atunci când o serie de operații DML sunt efectuate pe o masă, tabela este fragmentată deoarece DML nu eliberează spațiu pentru HWM.HWM este indicatorul de utilizare a blocului (BLOCURI UTILIZATE) din baza de date. Blocurile merg înainte.

Redenumirea implicit Permanent Tablespace prostranstvaTablichnoe spațiu tabelă SYSAUX TABLESPACE compozit TempDefault Permanent TablespaceOracle 9i a introdus conceptul unui spațiu de tabelă temporar în mod implicit (implicit TABLESPACE temporară), pentru a preveni accidentale.

ALTER nume_tabelă TABLE numai pentru citire; ALTER TABLE nume_tabelă Citire; Următorul script creează un tabel, populează cu câteva rânduri, apoi modul de masă ustanavilivaet "read-only" ro_tab TABLE .CREATE (ID NUMBER); INSERT INTO VALORI ro_tab (1); INSERT INTO VALORI ro_tab (2).

Procedura de creare este practic la fel ca versiunile anterioare - 9i și 10g. În baza de date vom crea următoarele opțiuni: OMF (Oracle Managed File) pentru fișiere de date, redo-log și fișiere de control. FRA (zona de recuperare flash) pentru arbori sau tăieturi de arhivă.

Nerespectarea faptului că toate modificările planului vor fi întotdeauna cele mai bune, au determinat anumiți clienți să își consolideze planurile de execuție (planurile stocate) sau să blocheze statisticile optimizatorului. Cu toate acestea, dacă acționăm în acest fel, ne lipsim de posibilitatea de ao folosi vreodată.

Articole similare