ALTE DOCUMENTE
|
|||||||
Crearea si gestionara tabelelelor
Dupa parcurgerea acestei lectii, veti putea realiza urmatoarele obiective:
Descrierea obiectelor de tip baza de date;
Crearea bazelor de date;
Descrierea tipurilor de data ce pot fi utilizate în momentul definirii specificatiilor coloanelor;
Modificarea structurii unei baze de date;
Stergerea, redenumirea si trunchierea bazelor de date.
Obiect |
Descriere |
Table |
Unitatea de baza pentru înregistrare; compusa din linii si coloane. |
View |
Reprezentare logica a unor date dintr-o tabela sau mai multe. |
Sequence |
Genereaza valori 626o148g pentru chei primare. |
Index |
Mareste viteza în cazul interogarilor. |
Synonym |
Da nume alternative obiectelor. |
Tabelele pot fi create în orice moment, chiar în momentul când utilizatorul foloseste baza de date.
Nu este necesara specificarea marimii unei baze de date. Marimea este definita de spatiu alocat bazei de date, ca întreg. Este important, totusi, cat spatiu va ocupa tabela dupa un timp.
Structura unei tabele poate fi modificata dinamic.
Numele trebuie sa înceapa cu o litera;
Poate fi de 1-30 caractere lungime;
Caracterele permise sunt numai A-Z, a-z, 0-9, $ si
Un utilizator nu poate avea doua tabele cu nume identice;
Nu trebuie sa fiu un nume rezervat.
Folositi nume descriptive pentru tabele sau alte obiecte de tip baza de date;
Folositi aceleasi nume pentru aceleasi entitati din tabele diferite. De exemplu, coloana cu numarul departamentului este denumita DEPTNO atât în tabela EMP, cât si în tabela DEPT.
Trebuie sa aveti:
- Drepturi pentru crearea unei tebele;
- Unitate de stocare
CREATE TABLE [schema.] table (column datatype [DEFAULT expr]); |
Trebuie specificate:
- Numele tabelei
- Numele coloanei, tipul de data pentru coloana si marimea tipului de data.
Sintaxa:
- schema numele posesorului tabelei;
- table numele tabelei;
- DEFAULT expr specifica valoarea implicita, daca aceasta lipseste într-o comanda ulterioara de inserare (INSERT);
- column numele coloanei;
Tabelele a caror proprietar sunt alti utilizatori nu sunt în shema utilizatorului curent;
Pentru a fi referite trebuie folosit numele proprietarului tabelei.
Optiunea DEFAULT
Specifica valoarea implicita pentru o coloana într-o operatie de inserare;
. hiredate DATE DEFAULT SZSDATE, . |
Valorile permise sunt valori literale, expresii sau functii SQL;
Valorile ilegale sunt numele altor coloane sau pseudocoloane;
Valoarea implicita trebuie sa aiba acelasi tip cu cel al coloanei.
Unei coloane i se poate asigna o valoare implicita utilizâd optiunea DEFAULT. Aceasta optiune previne atribuirea unor valori null coloanelor inserate fara o valoare explicita. Valoarea poate fi una literala, o expresie sau o functie SQL, cum ar fi SYSDATE si USER, dar valoarea nu poate fi cea a unei alte coloane sau o pseudocoloana, cum ar fi NEXVAL sau CURRVAL. Valoarea implicita trebuie sa se potriveasca cu tipul de data al coloanei.
Crearea unei tabele:
SQL> CREATE TABLE DEPT (deptno NUMBER( dname VARCHAR(14), loc VARCHAR(13)); Table created. |
Confirmarea crearii tabelei:
SQL> DESCRIBE dept |
Name |
Null? |
Type |
DEPTNO |
NOT NULL |
NUMBER(2) |
DNAME |
VARCHAR(14) |
|
LOC |
VARCHAR(13) |
Exemplul anterior creaza tabela DEPT, cu trei coloane: DEPTNO, DNAME si LOC. Mai departe se confirma crearea tabelei DEPT ca rezultat al comenzii DESCRIBE.
Descrierea tabelelor unui user:
SQL> SELECT * FROM user_tables; |
Afisarea obiectelor distincte ale unui utilizator:
SQL> SELECT DISTINCT object_type FROM user_objects; |
Afizarea tabelelor, view-urilor, sinonimelor, si sequences+rile unui utilizator:
SQL> SELECT * FROM user_catalog; |
Puteti interoga dictionarul de date pentru a afisa informatii diverse despre obiectele de tip baza de date ale unui utilizator. Tabelele cele mai utilizate ale din dictionarul de date sunt USER_TABLES, USER_OBJECTS si USER_CATALOG. Tabela USER_CATALOG are un sinonim numit CAT. Puteti folosi acest nume în loc de USER_CATALOG în comenzi.
SQL> SELECT * FROM CAT; |
Tipuri de date
Tipul de data |
Descriere |
VARCHAR2(size) |
Data de tip careacter, de lungime variabila. (Trebuie specificata o lungime maxima, size, valoarea implicita este 1,maxima 4000) |
CHAR(size) |
Data de tip caracter de lungime (size) fixa. (Valoarea implicita este cea minima 1, maxima 2000) |
NUMBER(p,s) |
Numar cu p cifre si s cifre zecimale. (p poate lua valori între 1 si 38, s între -84 si 127) |
DATE |
Data de tip data calendaristica cuprinsa între Ianuarie,1 ,4712 B.C. si Decembrie, 31, 9999 A.D. |
LONG |
Data de tip caracter cu lungime variabila pâna la 2 gigabytes. |
CLOB |
Data de pâna la 4 gigabytes. |
RAW(size) |
Data binara cu lungime specificata, size. Valoarea maxima este de 2000. Trebuie specificata aceasta valoare. |
LONG RAW |
Data binara cu lungime de pâna la 2 gigabytes. |
BLOB |
Data binara cu lungime de pâna la 4 gigabytes. |
BFILE |
Data binara stocata într+un fisier extern, lungime maxima de pâna la 4 gigabytes. |
|