Oracle Typy danych PL/SQL: wartość logiczna, liczba, data [przykład]
Co to są typy danych PL/SQL?
Typy danych w PL/SQL służą do definiowania sposobu przechowywania, obsługi i przetwarzania danych Oracle podczas przechowywania i przetwarzania danych. Typy danych są powiązane z określonym formatem przechowywania i ograniczeniami zakresu. W Oracle, każda wartość lub stała ma przypisany typ danych.
Główna różnica między PL/SQL i SQL Typy danych to typy danych SQL ograniczone do kolumn tabeli, podczas gdy typy danych PL/SQL są używane w Bloki PL/SQLWięcej na ten temat później w tym samouczku.
Poniżej znajduje się diagram różnych Oracle Typy danych PL/SQL:
Typ danych PL/SQL CHARACTER
Ten typ danych zasadniczo przechowuje znaki alfanumeryczne w formacie ciągu.
Przypisując je do typu danych CHARACTER, wartości literałów należy zawsze ująć w pojedyncze cudzysłowy.
Ten znakowy typ danych jest dalej klasyfikowany w następujący sposób:
- CHAR Typ danych (stały rozmiar ciągu)
- VARCHAR2 Typ danych (zmienny rozmiar ciągu)
- VARCHAR Typ danych
- NCHAR (natywny stały rozmiar łańcucha)
- NVARCHAR2 (natywny rozmiar łańcucha zmiennej)
- DŁUGI i DŁUGI SUROWY
DataType | Opis | Składnia |
---|---|---|
ZWĘGLAĆ | Ten typ danych przechowuje wartość ciągu, a rozmiar ciągu jest ustalany w momencie zadeklarowania zmienna.
|
grade CHAR; manager CHAR (10):= 'guru99'; Wyjaśnienie składni:
|
VARCHAR2 | Ten typ danych przechowuje ciąg, ale jego długość nie jest stała.
|
manager VARCHAR2(10) := ‘guru99'; Wyjaśnienie składni:
|
VARCHAR | Jest to równoznaczne z typem danych VARCHAR2.
|
manager VARCHAR(10) := ‘guru99'; Wyjaśnienie składni:
|
NCHAR | Ten typ danych jest taki sam jak typ danych CHAR, ale zestaw znaków będzie odpowiadał narodowemu zestawowi znaków.
|
native NCHAR(10); Wyjaśnienie składni:
|
NVARCHAR2 |
Ten typ danych jest taki sam jak typ danych VARCHAR2, ale zestaw znaków będzie miał charakter narodowy.
|
Native var NVARCHAR2(10):='guru99'; Wyjaśnienie składni:
|
DŁUGI i DŁUGI | Ten typ danych służy do przechowywania dużego tekstu lub nieprzetworzonych danych o maksymalnym rozmiarze 2 GB.
|
Large_text LONG; Large_raw LONG RAW; Wyjaśnienie składni:
Uwaga: Używanie typu danych LONG nie jest zalecane przez Oracle. Zamiast tego powinien być preferowany typ danych LOB. |
Typ danych PL/SQL NUMBER
Ten typ danych przechowuje liczby stałe lub zmiennoprzecinkowe do 38 cyfr precyzji. Ten typ danych jest używany do pracy z polami, które będą zawierać tylko dane liczbowe. Zmienna może być zadeklarowana z precyzją i szczegółami cyfr dziesiętnych lub bez tych informacji. Wartości nie muszą być ujęte w cudzysłowy podczas przypisywania dla tego typu danych.
A NUMBER(8,2); B NUMBER(8); C NUMBER;
Wyjaśnienie składni:
- Powyższa deklaracja w pierwszej części określa, że zmienna „A” jest typu danych liczbowych o całkowitej precyzji 8 i liczbie cyfr dziesiętnych 2.
- Druga deklaracja określa, że zmienna „B” jest typem danych liczbowych o całkowitej precyzji 8 i bez cyfr dziesiętnych.
- Trzecia deklaracja jest najbardziej ogólna, deklaruje, że zmienna „C” jest typem danych liczbowych bez ograniczeń precyzji lub miejsc dziesiętnych. Może przyjąć maksymalnie 38 cyfr.
Typ danych BOOLEAN PL/SQL
Ten typ danych przechowuje wartości logiczne. Oracle Boolean Typ danych reprezentuje PRAWDA lub FAŁSZ i jest używany głównie w instrukcjach warunkowych. Wartości nie muszą być ujęte w cudzysłów podczas przypisywania dla tego typu danych.
Var1 BOOLEAN;
Wyjaśnienie składni:
- Powyżej zmienna „Var1” jest zadeklarowana jako typ danych BOOLEAN. Dane wyjściowe kodu będą miały wartość prawda lub fałsz, w zależności od ustawionego warunku.
Typ danych PL/SQL DATE
Ten typ danych przechowuje wartości w formacie daty, jako data, miesiąc i rok. Ilekroć zmienna jest zdefiniowana z typem danych DATE wraz z datą, może przechowywać informację o czasie i domyślnie informacja o czasie jest ustawiona na 12:00:00, jeśli nie została określona. Wartości należy ująć w cudzysłów podczas przypisywania dla tego typu danych.
Średnia Oracle format czasu dla wejścia i wyjścia to „DD-MON-YY” i jest on ponownie ustawiany na NLS_PARAMETERS (NLS_DATE_FORMAT) na poziomie sesji.
newyear DATE:='01-JAN-2015'; current_date DATE:=SYSDATE;
Wyjaśnienie składni:
- W powyższym przykładzie zmienna „nowyrok” jest zadeklarowana jako typ danych DATE i ma przypisaną wartość 1 styczniast, data 2015.
- Druga deklaracja deklaruje zmienną current_date jako typ danych DATE i przypisuje jej wartość zawierającą bieżącą datę systemową.
- Obie te zmienne przechowują informację o czasie.
Typ danych PL/SQL LOB
Ten typ danych jest używany głównie do przechowywania i manipulowania dużymi blokami nieustrukturyzowanych danych, takich jak obrazy, pliki multimedialne itp. Oracle woli LOB zamiast typu danych LONG, ponieważ jest bardziej elastyczny niż typ danych LONG. Poniżej przedstawiono kilka głównych zalet typu danych LOB w porównaniu z typem danych LONG.
- Liczba kolumn w tabeli z typem danych LONG jest ograniczona do 1, natomiast tabela nie ma ograniczeń co do liczby kolumn z typem danych LOB.
- Narzędzie interfejsu danych akceptuje typ danych LOB tabeli podczas replikacji danych, ale pomija kolumnę LONG tabeli. Te kolumny LONG należy zreplikować ręcznie.
- Rozmiar kolumny LONG wynosi 2 GB, natomiast LOB może pomieścić do 128 TB.
- Oracle stale ulepsza typ danych LOB w każdym ze swoich wydań zgodnie z nowoczesnymi wymaganiami, podczas gdy typ danych LONG jest stały i nie otrzymuje wielu aktualizacji.
Dlatego zawsze dobrze jest używać typu danych LOB zamiast typu danych LONG. Poniżej przedstawiono różne typy danych LOB. Mogą przechowywać do rozmiaru 128 terabajtów.
- KROPELKA
- CLOB i NCLOB
- BPLIK
DataType | Opis | Składnia |
---|---|---|
KROPELKA | Ten typ danych przechowuje dane LOB w formacie pliku binarnego do maksymalnego rozmiaru 128 TB. Nie przechowuje danych na podstawie szczegółów zestawu znaków, więc może przechowywać niestrukturyzowane dane, takie jak obiekty multimedialne, obrazy itp. |
Binary_data BLOB; Wyjaśnienie składni:
|
CLOB i NCLOB | Typ danych CLOB przechowuje dane LOB w zestawie znaków, podczas gdy NCLOB przechowuje dane w natywnym zestawie znaków. Ponieważ te typy danych wykorzystują pamięć opartą na zestawie znaków, nie można w nich przechowywać danych takich jak multimedia, obrazy itp., których nie można umieścić w ciągu znaków. Maksymalny rozmiar tych typów danych wynosi 128 TB. |
Charac_data CLOB; Wyjaśnienie składni:
|
BPLIK |
|
Podsumowanie
Omówiliśmy różne proste typy danych, które są dostępne w PL / SQL wraz z ich składnią. Poznamy złożone typy danych w dalszych tematach.