Saturday, 20 September 2014

VARCHAR Data type in Oracle

VARCHAR and VARCHAR2 Datatypes in Oracle / Overview of VARCHAR Datatype / How to use VARCHAR type in Oracle to declare and use Attributes? / Oracle VARCHAR datatype How to?


VARCHAR2 and VARCHAR Datatypes


VARCHAR2 datatype is used to store Variable-length character strings.

Syntax

VARCHAR2[(size [BYTE | CHAR])]

where VARCHAR2 is the datatype,
          size is the maximum length of the string to be stored
          BYTE/CHAR would mean the same thing. That is, size in number of Bytes or Characters.

Overview
Datatype
VARCHAR2
Default Size
1 Byte/Character
Minimum Size
1 Byte/Character
Maximum Size
4000 Bytes/Characters
If the value to be stored is shorter than the declared size?
The memory needed to store the value will only be used. [not the size bytes]
If the value to be stored is longer than the declared size?
ERROR
Memory required to store 1 Character
Depends on the character set used. It may vary from 1 byte to 4 bytes. For example, if the character to be stored is English character then 1 byte, if it is Chinese character then 3 bytes
Permitted Values
Alphanumeric characters with various native character data set support


What is variable length? It uses the size number of Bytes to store any value of size length. If the value to be stored is less than size, then it occupies only the amount of memory required to store that value. For example, let us consider the declaration of variable RegNo;
Student_Name VARCHAR2(25);
For this declaration, if the value for any Student_Name is of length 25 characters then 25 bytes will be used. If any of the Student_Name value is only 10 characters then only 10 bytes will be used. The values that are to be stored and the actual storage along with the total amount of memory consumed are given in the table below for reference;

Declaration
Actual Data
Stored Data
Value to be stored
Bytes needed
Data Stored
Bytes used
Bytes saved
VARCHAR2(5)
‘R101’
4
‘R101‘
4
1
VARCHAR2(5)
‘R1001’
5
‘R1001’
5
0
VARCHAR2(5)
‘R1’
2
‘R1‘
2
3
VARCHAR2(10)
‘ID1456’
6
‘ID1456‘
6
4
VARCHAR2(10)
‘ID’
2
‘ID‘
2
8

Note: Preceding blank spaces and intermediate blank spaces in an input will be considered as data. Only trailing blank spaces gets removed (eliminated) automatically.



 

No comments:

Post a Comment

SQL exercises for beginners one

SQL Exercises for Beginners / Simple SQL Exercises with Answers / Solved SQL exercises / SQL solved exercises with simple conditions / So...