Yhteenveto: Tässä opetusohjelmassa tutustut Oraclen VARCHAR2
-tietotyyppiin ja siihen, miten sitä käytetään muuttuvan pituisten merkkijonosarakkeiden määrittelyyn.
Oraclen VARCHAR2-tietotyypin esittely
Muuttuvan pituisten merkkijonojen tallentamiseen käytetään Oraclen VARCHAR2
-tietotyyppiä. VARCHAR2
-sarakkeeseen voidaan tallentaa arvo, joka vaihtelee 1 ja 4000 tavun välillä. Se tarkoittaa, että yhden tavun merkistöllä voit tallentaa enintään 4000 merkkiä VARCHAR2
-sarakkeeseen.
Kun luot taulukon, jossa on VARCHAR2
-sarake, sinun on määritettävä merkkijonon enimmäispituus joko tavuina:
tai merkkeinä
Oraclessa käytetään oletusarvoisesti arvoa BYTE
, jos et määritä nimenomaisesti arvoa BYTE
tai CHAR
arvoa max_size
jälkeen. Toisin sanoen VARCHAR2(N)
-sarakkeeseen voi mahtua enintään N
tavua merkkejä.
Jos tallennat merkkijonon, jonka koko ylittää VARCHAR2
-sarakkeen maksimikoon, Oracle antaa virheen.
Jos esimerkiksi määrität VARCHAR2
-sarakkeen, jonka maksimikoko on 20. Yhden tavun merkkijonoon voi tallentaa enintään 20 merkkiä. Jos tallennat 21 merkkiä tai enemmän, Oracle antaa virheen.
Jos tallennat 10 merkkiä VARCHAR2(20)
-sarakkeeseen, Oracle käyttää tallennukseen vain 10 tavua, ei 20 tavua. Siksi VARCHAR2
-tietotyypin käyttäminen auttaa säästämään taulukon käyttämää tilaa.
Vertailtaessa VARCHAR2
-arvoja Oracle käyttää täydennyksettömän vertailun semantiikkaa.
Oracle VARCHAR2 max length
Oraclen tietokanta 12c:stä lähtien VARCHAR2
-tietotyypille voi määrittää maksimikoon 32767. Oracle käyttää MAX_STRING_SIZE
-parametria maksimikoon hallintaan. Jos MAX_STRING_SIZE
on STANDARD
, VARCHAR2
:n enimmäiskoko on 4000 tavua. Jos MAX_STRING_SIZE
on EXTENDED
, VARCHAR2
:n enimmäiskoko on 32767.
Parametrin MAX_STRING_SIZE
arvon saamiseksi käytetään seuraavaa kyselyä:
Vai käytetäänkö seuraavaa lauseketta:
Oracle VARCHAR2-esimerkkejä
Seuraavalla lausekkeella luodaan uusi taulukko nimeltä econtacts
, johon tallennetaan työntekijöiden hätäyhteystietoja.
Taulukossa econtacts
on kolme VARCHAR2
-saraketta: first_name
, last_name
ja phone
.
Seuraavalla lausekkeella lisätään uusi rivi econtacts
-tauluun:
Toimi odotetusti, koska syötetyt tiedot eivät ylitä VARCHAR2
-sarakkeen enimmäiskokoa.
Mutta seuraavan lausekkeen lisääminen ei onnistu:
Koska syötetty etunimi ylittää first_name
-sarakkeen maksimipituuden, Oracle antoi seuraavan virheilmoituksen:
Tässä opetusohjelmassa olet tutustunut Oraclen VARCHAR2
-tietotyyppiin ja siihen, miten VARCHAR2
-tietotyyppiä voidaan käyttää muuttuvan pituisten merkkijonosarakkeiden määrittelyyn taulukossa.
- Oliko tästä opetusohjelmasta apua?
- KylläEi