Oracle Typy danych PL/SQL: wartość logiczna, liczba, data [przykład]
⚡ Inteligentne podsumowanie
Typy danych PL/SQL definiują sposób Oracle Przechowuje, obsługuje i ogranicza każdą wartość w bloku. Grupują się one w rodziny znaków, liczb, wartości logicznych, dat i dużych obiektów (LOB), z których każda ma własny format przechowywania, limity rozmiaru i reguły przypisywania.

Czym są typy danych PL/SQL?
Typy danych w PL/SQL zdefiniuj sposób przechowywania, obsługi i przetwarzania danych Oracle podczas przechowywania i przetwarzania. Typy danych są powiązane z określonym formatem przechowywania i ograniczeniami zakresu. W Oracle, każdej wartości lub stałej przypisany jest typ danych.
Główna różnica między PL/SQL i SQL Typy danych SQL są 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 przechowuje znaki alfanumeryczne w formacie ciągu. Wartości literałowe powinny być zawsze ujęte w pojedyncze cudzysłowy podczas przypisywania ich do typu danych CHARACTER.
Ten znakowy typ danych jest dalej klasyfikowany w następujący sposób:
- Typ danych CHAR (stały rozmiar ciągu)
- Typ danych VARCHAR2 (zmienny rozmiar ciągu)
- Typ danych VARCHAR
- 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 deklaracji. zmienna.
|
grade CHAR; manager CHAR (10):= 'guru99'; Wyjaśnienie składni:
|
| VARCHAR2 | Ten typ danych przechowuje ciąg znaków, ale jego długość nie jest ustalona.
|
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 CHAR, ale zestaw znaków jest zestawem znaków narodowych.
|
native NCHAR(10);
Wyjaśnienie składni:
|
| NVARCHAR2 | Ten typ danych jest taki sam jak VARCHAR2, ale zestaw znaków jest zestawem znaków narodowych.
|
Native_var NVARCHAR2(10):= 'guru99'; Wyjaśnienie składni:
|
| DŁUGI i DŁUGI SUROWY | Ten typ danych przechowuje duże dane tekstowe lub surowe dane o maksymalnym rozmiarze 2 GB.
|
Large_text LONG; Large_raw LONG RAW; Wyjaśnienie składni:
Uwaga: Nie zaleca się używania typu danych LONG OracleZamiast tego należy preferować typ danych LOB. |
Typ danych PL/SQL NUMBER
Ten typ danych przechowuje liczby stałoprzecinkowe lub zmiennoprzecinkowe o precyzji do 38 cyfr. Jest używany do pracy z polami zawierającymi wyłącznie dane liczbowe. Zmienną można zadeklarować z precyzją i liczbą miejsc po przecinku lub bez nich. Wartości nie muszą być ujęte w cudzysłów podczas przypisywania.
A NUMBER(8,2); B NUMBER(8); C NUMBER;
Wyjaśnienie składni:
- Pierwsza deklaracja deklaruje zmienną „A” o typie danych liczbowych z całkowitą precyzją 8 i 2 miejscami po przecinku.
- Drugi deklaruje typ danych liczbowych „B” z całkowitą precyzją 8 i bez cyfr dziesiętnych.
- Trzecia jest najbardziej ogólna i deklaruje typ danych liczbowych „C” bez ograniczeń co do precyzji i miejsc po przecinku. Może zawierać do 38 cyfr.
Typ danych BOOLEAN PL/SQL
Ten typ danych przechowuje wartości logiczne. Oracle Typ danych boolowskich 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.
Var1 BOOLEAN;
Wyjaśnienie składni:
- Zmienna „Var1” jest zadeklarowana jako typ danych BOOLEAN. Wynik będzie wartością true lub false w zależności od ustawionego warunku.
Typ danych PL/SQL DATE
Ten typ danych przechowuje wartości w formacie daty, jako datę, miesiąc i rok. Za każdym razem, gdy zmienna jest zdefiniowana z typem danych DATE, może ona przechowywać informacje o czasie; domyślnie godzina jest ustawiana na 12:00:00, jeśli nie jest określona. Wartości należy ująć w cudzysłów podczas przypisywania.
Średnia Oracle Format czasu dla wejścia i wyjścia to „DD-MON-RR”, ustawiany w parametrze NLS_PARAMETERS (NLS_DATE_FORMAT) na poziomie sesji.
newyear DATE:= '01-JAN-2015'; current_date DATE:= SYSDATE;
Wyjaśnienie składni:
- Zmienna „newyear” jest zadeklarowana jako typ danych DATE i przypisana jest jej wartość 1 stycznia 2015 r.
- Druga deklaracja deklaruje „current_date” jako typ danych DATE i przypisuje bieżącą datę systemową.
- Obie zmienne zawierają informacje o czasie.
Typ danych PL/SQL LOB
Ten typ danych służy głównie do przechowywania i przetwarzania dużych bloków niestrukturyzowanych danych, takich jak obrazy i pliki multimedialne. Oracle Preferuje typ danych LOB nad LONG, ponieważ jest bardziej elastyczny. Główne zalety LOB nad LONG to:
- Tabela jest ograniczona do jednej kolumny typu LONG, natomiast nie ma ograniczeń co do liczby kolumn typu LOB.
- Narzędzia interfejsu danych akceptują kolumny LOB podczas replikacji, ale pomijają kolumny LONG, które muszą zostać zreplikowane ręcznie.
- Kolumna LONG może pomieścić do 2 GB, natomiast kolumna LOB może pomieścić do 128 TB.
- Oracle W każdej kolejnej wersji typ danych LOB jest udoskonalany, natomiast typ danych LONG pozostaje w dużej mierze niezmieniony.
Dlatego zawsze warto używać typu danych LOB zamiast LONG. Różne poniższe typy danych LOB pozwalają na przechowywanie do 128 terabajtów:
- KROPELKA
- CLOB i NCLOB
- BPLIK
| DataType | OPIS | Składnia |
|---|---|---|
| KROPELKA | Ten typ danych przechowuje dane LOB w formacie binarnym o maksymalnym rozmiarze 128 TB. Nie przechowuje danych w oparciu o szczegóły zestawu znaków, dlatego może przechowywać dane niestrukturalne, takie jak obiekty multimedialne i obrazy. |
Binary_data BLOB;
Wyjaśnienie składni:
|
| CLOB i NCLOB | Format CLOB przechowuje dane LOB w zestawie znaków, natomiast NCLOB w natywnym zestawie znaków. Ponieważ te formaty korzystają z pamięci masowej opartej na zestawie znaków, nie mogą przechowywać danych, takich jak multimedia czy obrazy. Maksymalny rozmiar to 128 TB. |
Charac_data CLOB;
Wyjaśnienie składni:
|
| BPLIK |
|
