Sunteți pe pagina 1din 7

:: JavaFriend :: Welcome to JavaFriendSQL Short Glossary

Java si Oracle pentru baze de date | Devices programming


Sintaxa SQL standard | ANSI SQL si PL/SQL | Primii pasi cu Oracle

Termeni SQL si surse ODBC


Baze de date
Tipuri de date in SQL standard
Sintaxa SQL
Laboratoare SQL

Termeni SQL

SQL = Structured Query Language


Extensiile SQL = specificatii ale distribuitorilor de SGBD
SQL standard = ANSI SQL
PL/SQL = Procedural Language / SQL, extensie SQL pentru Oracle
J/SQL = extensie pentru Java
ODBC = Open Database Connectivity, mecanism stardard pentru BD, format
din interfete de conectare la o BD relationala
SGBD - Sistem de gestionare a bazelor de date (software - MSQuery,
Allaire JRun 3.x, DB2, Informix, Access, ASP, SQL Server, Visual Basic,
Visual C++, Oracle 9, Sybase)
Pentru a putea lucra cu aceste SGBD-uri trebuie sa configurati ODBC,
preexistent pe o masina Windows.
Sursele de date ODBC
contin driverele si informatiile necesare conexiunii la o baza de date
si sunt specifice sistemului nu aplicatiilor. Sursele de date ODBC pot fi
definite pentru orice aplicatie de baze de date (vezi mai sus SGBD) din
Control Panel (pentru Windows):
1. Deschideti aplicatia ODBC din Control Panel
2. Selectati tab-ul System DSN, apoi clic pe butonul Add, pentru crearea
unei noi surse de date
3. Selectati driverul care va fi folosit (pentru Java puteti selecta:
Microsoft Text Driver sau Microsoft ODBC for Oracle daca lucrati cu baze
de date Oracle). Ideea este sa selectati un driver care sa corespunda
bazelor de date cu care lucrati.
4. In functie de tipul de baze de date sau de sistemul de gestionare a
BD vi se va cere numele serverului si posibil calea spre sursa de date si
informatii de conectare (parola si user-ul).
Bazele de date
pot fi Foxpro, Access, Oracle, SyBase, Informix etc. O baza de date este
un model de stocare a datelor, date care pot fi vizualizate sub forma unor
tabele. Deci, o baza de date este construita din 1 sau mai multe tabele.
Tabele sunt matrice bidimensionale, construite din coloane (campuri) si
linii (inregistrari).
Baza de date
Tabelele bazei de dateTabelul 1Camp1 Camp2 Camp3
Inregistrarea1
Inregistrarea2
Inregistrarea3
Tabelul 2Camp1 Camp2 Camp3 Camp4
Inregistrarea1
Inregistrarea2
O baza de date este relationala daca are:
- structura (tabele accesibile utilizatorilor)
- operatii (actiuni de manipulare a datelor) si
- reguli (legi de acces la date si relatii intre tabele).
O baza de date relationala prezinta principalele avantaje:
- permite interogari utilizand SQL
- suporta accesul simultan la date a mai multor utilizatori
- structura logica independenta de modul de stocare fizic al datelor
Pentru mai multe informatii despre tabele si baze de date cititi o carte
despre fundamentele bazelor de date. Carti despre baze de date gasiti la
www.teora.ro
Tipuri de date in SQL standard
Desi tipurile de date nu sunt intotdeauna aceleasi pentru toate
SGBD-urile, iata o sinteza a acestora:

De tip sir de caractere: (se scriu intre apostrofuri ex.: 'sir')


CHAR 1-255 caractere, dimensiune obligatoriu de specificat
NCHAR forma speciala pentru CHAR, permite Unicode
TEXT,VARCHAR text de lungime variabila
NVARCHAR forma speciala pentru TEXT, permite multiocteti
De tip binar:
BINARY,RAW sir de date binare de lungime fixa
VARBINARY,LONGRAW sir de date binare de lungime variabila
De tip numeric: (nu se incadreaza intre ' ')
BYTE 0 sau 1
DECIMAL,NUMERIC valori fixe sau cu virgula mobila
FLOAT,NUMBER valori cu virgula mobila
INT,INTEGER valori intregi pe 4 octeti
REAL valori cu virgula mobila pe 4 octeti
SMALLINT valori intregi pe 2 octeti
TINYINT valori intregi pe 1 octet
De tip data si ora:
DATE
DATETIME, TIMESTAMP
SMALLDATETIME
Date ODBC valabile cu orice baza de date:
{d '2002-07-10'} pentru data
{t '16:55:32'} pentru timp
De tip monetar: (pentru Oracle: DECIMAL)
MONEY
CURRENCY
DECIMAL
Sintaxa SQL
poate sa difere de la implementare la implementare. De exemplu pentru
SQL Server operatorul de concatenare a sirurilor este "+", pentru Oracle
este "||". In continuare voi da sintaxa generala si cateva exemple pentru
fiecare instructiune SQL. Aveti la dispozitie si lucrari de laborator.
Deoarece acestea exista din plin pe internet, nu am considerat necesar sa
le mai scriu si eu. Daca sunteti incepator, o carte buna despre SQL veti
gasi la www.forta.com
ALTER DATABASE
ALTER DATABASE database_name;
Schimba marimea si setarile bazei de date. Variaza de la un sistem de BD
la altul.
ALTER USER
ALTER USER user
Schimba setarile si parola userului.

BEGIN TRANSACTION
1> BEGIN TRANSACTION transaction_name
2> transaction type
3> if exists
4> begin
Semnifica inceputul unei tranzactii pentru un user. O tranzactie se
sfarseste cand este comisa (vezi COMMIT TRANSACTION) sau se renunta la ea
(vezi ROLLBACK TRANSACTION). O tranzactie reprezinta o unitate logica a
muncii dvs.

CLOSE CURSOR
close cursor_name
Inchide un cursor si elimina datele din el. Pentru a sterge complet un
cursor, folositi DEALLOCATE CURSOR .

COMMIT TRANSACTION
SQL> COMMIT;
Salveaza munca inceputa de la inceputul tranzactiei (de cand BEGIN
TRANSACTION a fost executata).

CREATE DATABASE
SQL> CREATE DATABASE database_name;
Creaza o noua baza de date. Exista mai multe optiuni pentru crearea unei
baze de date noi.

CREATE INDEX
CREATE INDEX index_name
ON table_name(column_name1, [column_name2], ...);
Contine indexul campului / campurilor.

CREATE PROCEDURE
create procedure procedure_name
[[(]@parameter_name
datatype [(length) | (precision [, scale])
[= default][output]
[, @parameter_name
datatype [(length) | (precision [, scale])
[= default][output]]...[)]]
[with recompile]
as SQL_statements
Creaza o noua procedura stocata in baza de date. O procedura stocata este
formata din declaratii SQL si poate fi executata utilizand EXECUTE
command. Procedurile stocate suporta parametrii si pot intoarce valori
intregi pentru verificarea status-ului.

CREATE TABLE
CREATE TABLE table_name
( field1 datatype [ NOT NULL ],
field2 datatype [ NOT NULL ],
field3 datatype [ NOT NULL ]...)
Creaza o noua tabela in baza de date. Fiecare camp are un nume si un tip
de date care se creaza odata cu tabela.

CREATE TRIGGER
create trigger trigger_name
on table_name
for {insert, update, delete}
as SQL_Statements
Creaza un obiect al BD numit declansator. Un declansator executa
declaratii SQL cand sunt facute modificari in tabele prin instructiunile:
INSERT, UPDATE sau DELETE. Declansatorii pot sa apeleze si proceduri
stocate.

CREATE USER
CREATE USER user
Creaza noi conturi de useri ai BD cu nume si parola.

CREATE VIEW
CREATE VIEW [(column1, column2...)] AS
SELECT
FROM
Creaza o vedere a BD, o proiectie logica a BD. Dupa ce vederea a fost
creata aceasta se comporta ca o tabela.

DEALLOCATE CURSOR
deallocate cursor cursor_name
Sterge complet un cursor din memorie, eliberand numele pentru un alt
cursor. Ar trebui sa inchideti un cursor cu CLOSE CURSOR inainte sa-l
stergeti definitiv.

DECLARE CURSOR
declare cursor_name cursor
for select_statement
Creaza un nou cursor dintr-o intructiune de interogare SELECT. Cu FETCH
pot fi vazute cursoarele.

DROP DATABASE
DROP DATABASE database_name;
Sterge complet o BD, inclusiv toate datele si structura fizica de pe disc.

DROP INDEX
DROP INDEX index_name;
Sterge un index al unei tabele.

DROP PROCEDURE
drop procedure procedure_name
Sterge o procedura stocata din BD; este similara cu DROP TABLE si DROP
INDEX.

DROP TABLE
DROP TABLE table_name;
Sterge un tabel din BD.
DROP TRIGGER
DROP TRIGGER trigger_name
Sterge un declansator din BD.

DROP VIEW
DROP VIEW view_name;
Sterge o vedere din BD.

EXECUTE
execute [@return_status = ]
procedure_name
[[@parameter_name =] value |
[@parameter_name =] @variable [output]...]]
Ruleaza o procedura stocata si este asociata unei declaratii SQL.
Parametrii pot fi dati procedurii stocate di datele pot fi returnate in
acesti parametrii daca optiunea output este folosita.

FETCH
fetch cursor_name [into fetch_target_list]
Incarca continutul datelor cursorului in variabilele programului.

FROM
FROM [, ...]
Specifica care tabela este folosita.

GRANT
GRANT role TO user
sau
GRANT system_privilege TO {user_name | role | PUBLIC}
acorda privilegii sau roluri pentru un user care a fost creat folosind
CREATE USER .

GROUP BY
GROUP BY <col> [, <col> ...]
Grupeaza toate randurile cu aceeasi valore a coloanei.

HAVING
HAVING
Este valida numai cu GROUP BY si limiteaza selectia grupurilor care
satisfac o conditie.

INTERSECT
INTERSECT
Returneaza toate elementele comune pentru doua declaratii SELECT.
ORDER BY
ORDER BY
Ordoneaza valorile returnate dupa coloana / coloanele specificate.

ROLLBACK TRANSACTION
Renunta efectiv la munca facuta intr-o tranzactie (incepand de la BEGIN
TRANSACTION executata).

REVOKE
REVOKE role FROM user;
sau
REVOKE {object_priv | ALL [PRIVILEGES]}
[, {object_priv | ALL [PRIVILEGES]} ] ...
ON [schema.]object
FROM {user | role | PUBLIC} [, {user | role | PUBLIC}] ...
Sterge privilegiile unui user din BD, cand aveti acest privilegiu (DBA).

SELECT
SELECT [DISTINCT | ALL]
Este inceputul oricarei regasiri de date. Modificatorul DISTINCT previne
selectarea valorilor duplicat. Modificatorul ALL este prestabilit si
permite duplicate.

SET TRANSACTION
SQL> SET TRANSACTION (READ ONLY | USE ROLLBACK SEGMENT);
Permite userului sa specifice cand incepe o tranzactie. Optiunea READ ONLY
blocheaza un set de inregistrari pana cand tranzactia se incheie pentru a
fi sigur ca datele nu s-au schimbat.

UNION
UNION
Returneaza toate elementele a doua declaratii SELECT .

WHERE
WHERE
Limiteaza regasirea randurilor care implinesc conditia de cautare. Se
obtin toate coloanele unui tabel.
Laboratoare SQL:
Instructiunea SELECT
Operatori
Functii
Obiecte: Tabele
Obiecte: Vederi, Secvente, Indecsi, Sinonime etc.
Crearea unei BD Oracle

Copyright© 2002-2003 JavaFriend

S-ar putea să vă placă și