What is the difference between CHAR and VARCHAR2? If
VARCHAR2 serves the uses of CHAR why CHAR is still used and
not been discarded yet?
Answers were Sorted based on User's Feedback
Answer / hannan
in char it allocates the memory space as static where as in
varchar2 it allocates the memory space as dynamic
OR
char is a space mapping function where as in varchar2 it is
not mapping the space it occupies the exact size of the
string
| Is This Answer Correct ? | 22 Yes | 0 No |
Answer / chandu
Have more diff between char and varchar2
char size only 2000 bytes in sql, default size is 1 byte.
it will occupying the trailing spaces. so much of memory wasted.
varchar2 size 4000 bytes in sql and no default size.
it will not occupying the trailing spaces.
| Is This Answer Correct ? | 18 Yes | 0 No |
Answer / madhavi
Hi,
Char is the datatype that occupies complete space declared
whether used or not. ie:- If any field is declared as char
(10) then this field for all records will occupy complete
10 bytes whether the value stored in it is 1 byte or 10
byte.
Whereas Varchar2, as the first 3 characters explains Var-
Variable, will occupy only the bytes for the value entered
in the field.
So ideally it is good practice to declare fields like
emp_flg or any other fields which we are sure will have
fixed length value as Char.
| Is This Answer Correct ? | 8 Yes | 0 No |
Technically CHAR has better performance than VARCHAR2.
For CHAR(10) database already knows the length of value in
each record and therefore displays the entire string up till
10 characters. In case of VARCHAR2 the end of string has to
be reached('\0'-NULL) before the database stops displaying
the characters ahead. Each character is compared to NULL
character before it can be determined that end of string has
arrived. Comparing each string character with NULL character
consumes some CPU cycles and hence VARCHAR2 is slower in
performance as compared to CHAR.
| Is This Answer Correct ? | 6 Yes | 0 No |
Answer / suriya
Another difference is accessing a variable declared as char
is faster than, accessing a varchar2.
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / pradeep
in char it allocates the memory space as static where as in
varchar2 it allocates the memory space as dynamic.
Another difference is accessing a variable declared as char
is faster than, accessing a varchar2. So CHAR is still used
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / manish ranjan
1. Char is fundamental data type. VARCHAR2 is derived one.
2. Char allocates static memory space while VARCHAR2
allocates dynamic memory.
3. Char is required to maintain compatibility with other
tools (Reporting, DWH, Data related).
4. Char is faster than VARCHAR2 (for large text).
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / masthan
create table test(aa char):=by using char create the table with out spicifing the lengh(by default it will create lenth 1)default size is 1 byte
by using varchar2 with out spicifing the lengh we cont able to create the table.There is no default size
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / laxmi narayana moru
VARCHAR2() IS USED TO STORE ALPHANUMERICAL DATA WHERE AS
CHAR() IS USED TO STORE THE CHARACTERS ONLY AND WHICH IS
FIXED LENGTH DATATYPE ...
CHAR() IS PROVIDING FAST ACCESSING COMPARE WITH THE VARCHAR2
()(50%).
| Is This Answer Correct ? | 1 Yes | 4 No |
Can we use SQL%ISOPEN in implicit cursors? Does this attribute works properly in Implicit Curosors?
What does “select count(1) from tab” result?
What is an alias command?
What is sqlca in db2?
State the advatage and disadvantage of Cursor's?
What is a cursor for loop ?
The in operator may be used if you know the exact value you want to return for at least one of the columns.
How write primary and foreign key relationship between two tables without using constraints? u can use any of procedure/function/trigger and any sql?
How can u find column name from a table which have max value in a row.( not max value)
Can we call a function containing dml statements in a select query?
What is the difference between UNIQUE CONSTRAINT and PRIMARY KEY? 1. There is no difference. 2. A PRIMARY KEY cannot be declared on multiple columns. 3. A UNIQUE CONSTRAINT cannot be declared on multiple columns. 4. A table can have multiple PRIMARY KEYS but only one UNIQUE CONSTRAINT. 5. A table can have multiple UNIQUE CONSTRAINTs but only one PRIMARY KEY.
How do you explain an index?
Oracle (3259)
SQL Server (4518)
MS Access (429)
MySQL (1402)
Postgre (483)
Sybase (267)
DB Architecture (141)
DB Administration (291)
DB Development (113)
SQL PLSQL (3330)
MongoDB (502)
IBM Informix (50)
Neo4j (82)
InfluxDB (0)
Apache CouchDB (44)
Firebird (5)
Database Management (1411)
Databases AllOther (288)