
Strona o szybkim czytaniu.
Jedyną metodą komunikacji z instancją bazy danych Oracle jest korzystanie z języka SQL (Structured Query Language). Składnia tego języka jest zbliżona do naturalnego języka angielskiego. Język SQL jest językiem czwartej generacji, a zatem określamy w nim, co ma zostać wykonane, natomiast nie określamy, w jaki sposób ma to zostać wykonane.
Podczas zapisu poleceń języka SQL obowiązują następujące zasady:
/* */
.--
.Na język SQL składają się trzy podstawowe grupy poleceń. Rozróżnienie to jest ważne ze względu na charakterystyczne cechy i ograniczony zakres stosowania poleceń z poszczególnych grup.
Polecenia z tej grupy służą do tworzenia, usuwania i modyfikowania obiektów bazodanowych, a także do zarządzania przywilejami.
Do grupy tej można zaliczyć między innymi polecenia CREATE
, DROP
, ALTER
, RENAME
, GRANT
i REVOKE
.
Polecenia te służą do operowania na danych znajdujących się w bazie, a więc do odczytywania, wstawiania, usuwania i modyfikacji tych danych. Do poleceń DML należą instrukcje: SELECT
, INSERT
, DELETE
, UPDATE
.
Są to polecenia pozwalające zarządzać transakcjami. Do grupy tej należą polecenia: COMMIT
, ROLLBACK
, SAVEPOINT
, SET TRANSACTION
.
Z językiem SQL związane są typy danych, które określają sposób przechowywania informacji w bazie danych Oracle. W bazie danych Oracle mamy do dyspozycji następujące proste typy danych:
NUMBER(P,S)
Typ ten może przechowywać wartości całkowite i rzeczywiste. P (precyzja) oznacza ilość wszystkich cyfr w liczbie, natomiast S (skala) oznacza ilość cyfr po przecinku. P <= 38, -84 <= S <= 127.
CHAR(L)
Przechowuje stałą zadeklarowaną (L) ilość znaków. Jeżeli ilość przypisanych znaków jest mniejsza niż L, wtedy zmienna jest uzupełniana do odpowiedniej długości spacjami. L musi być mniejsze od 256 i domyślnie jest przyjmowane jako 1.
VARCHAR2(L)
Przechowuje znaki. Zajmuje tylko tyle miejsca, ile znaków zostanie przypisanych do zmiennej. L służy do wyznaczenia maksymalnego, dopuszczalnego rozmiaru łańcucha danych, jaki można przypisać do zmiennej tego typu. L musi być mniejsze od 4000 i nie jest przyjmowane domyślnie (musi zostać wyspecyfikowane).
LONG
Typ bardzo podobny do VARCHAR2, tylko jego maksymalna długość wynosi 2 GB. Służy on do przechowywania bardzo długich tekstów.
Zmienne typu char zajmują zawsze tyle samo miejsca, niezależnie od tego, jakie wartości zostały tym zmiennym przypisane. Zmienne typu varchar2 zajmują miejsca w zależności od wielkości przypisanej wartości.
RAW(L)
Typ podobny do CHAR (L), z tym, że służy do przechowywania ciągów binarnych a nie tekstu.
LONG RAW
Typ podobny do typu LONG, ale służy do przechowywania ciągów binarnych a nie tekstu.
DATE
Typ ten przechowuje informacje o wieku, roku, miesiącu, dniu, godzinie, minucie i sekundzie. Jest zakodowany na siedmiu bajach, po jednym na każdy komponent.
CLOB
, BLOB
, BFILE
Są to typy danych do przechowywania bardzo dużych obiektów: tekstów, binariów i plików. Maksymalny ich rozmiar wynosi 4GB. Oracle zaleca ich stosowanie zamiast bardzo niewygodnych i mało wydajnych typów LONG.
Deklaracja | Przypisywana wartość | Przechowywana wartość |
---|---|---|
NUMBER | 1234.5678 | 1234.5678 |
NUMBER(3) | 123 | 123 |
NUMBER(3) | 1234 | --Błąd podczas operacji-- |
NUMBER(7,4) | 123.4567 | 123.4567 |
NUMBER(7,4) | 123.45678 | 123.4568 |
NUMBER(3,-2) | 123 | 100 |
NUMBER(3,-1) | 123 | 120 |
CHAR(10) | 'Ala' | 'Ala ' |
VARCHAR2(10) | 'Ala' | 'Ala' |
VARCHAR2(10) | 'Ala ma kota' | --Błąd podczas operacji-- |