Összefoglaló: ebben a bemutatóban megismerheti az Oracle VARCHAR2 adattípust, és megtudhatja, hogyan használhatja változó hosszúságú karakterlánc oszlopok definiálására.

Elvezetés az Oracle VARCHAR2 adattípushoz

A változó hosszúságú karakterláncok tárolására az Oracle VARCHAR2 adattípust használja. Egy VARCHAR2 oszlop 1 és 4000 bájt közötti értéket tárolhat. Ez azt jelenti, hogy egy egybájtos karakterkészlet esetén legfeljebb 4000 karaktert tárolhat egy VARCHAR2 oszlopban.

Az VARCHAR2 oszlopot tartalmazó táblázat létrehozásakor meg kell adnia a maximális karakterlánc-hosszúságot, vagy bájtokban:

vagy karakterekben

Az Oracle alapértelmezés szerint a BYTE-t használja, ha a max_size után nem adja meg kifejezetten a BYTE vagy CHAR értéket. Más szóval egy VARCHAR2(N) oszlop legfeljebb N bájtnyi karaktert tartalmazhat.

Ha olyan karakterláncot tárol, amelynek mérete meghaladja a VARCHAR2 oszlop maximális méretét, az Oracle hibát ad ki.

Ha például egy VARCHAR2 oszlopot határoz meg, amelynek maximális mérete 20. Az egybájtos karakterkészletben legfeljebb 20 karaktert tárolhat. Ha 21 karaktert vagy annál többet tárol, az Oracle hibát ad ki.

Ezeken kívül, ha 10 karaktert tárol egy VARCHAR2(20) oszlopban, az Oracle csak 10 bájtot használ fel a tárolásra, nem pedig 20 bájtot. Ezért a VARCHAR2 adattípus használatával megtakaríthatja a táblázat által használt helyet.

A VARCHAR2 értékek összehasonlításakor az Oracle a nem kitöltött összehasonlítási szemantikát használja.

Oracle VARCHAR2 max length

Az Oracle Database 12c óta a VARCHAR2 adattípus maximális mérete 32767 lehet. Az Oracle a MAX_STRING_SIZE paramétert használja a maximális méret szabályozására. Ha a MAX_STRING_SIZE STANDARD, akkor a VARCHAR2 maximális mérete 4000 bájt. Abban az esetben, ha a MAX_STRING_SIZE EXTENDED, akkor a VARCHAR2 maximális mérete 32767.

Az MAX_STRING_SIZE paraméter értékének lekérdezéséhez a következő lekérdezést használja:

Vagy használja a következő utasítást:

Oracle VARCHAR2 példák

A következő utasítás létrehoz egy új econtacts nevű táblát az alkalmazottak vészhelyzeti elérhetőségének tárolására.

A econtacts táblában három VARCHAR2 oszlop van: first_name, last_name és phone.

A következő utasítás új sort illeszt be a econtacts táblába:

Az elvárásoknak megfelelően működött, mivel a bemeneti adatok nem haladják meg a VARCHAR2 oszlop maximális méretét.

A következő utasítással azonban nem sikerült a beszúrás:

Mert mivel a bemeneti keresztnév meghaladja a first_name oszlop maximális hosszát, az Oracle a következő hibát adta ki:

Ebben a bemutatóban megismerkedett az Oracle VARCHAR2 adattípussal, valamint azzal, hogyan használhatja a VARCHAR2 adattípust változó hosszúságú karakterlánc oszlopok meghatározására egy táblázatban.

  • Az oktatóanyag hasznos volt?
  • Igen/Nem

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.