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 update views in sql?
How to know the last executed procedure?
Can We write bulk collect statement in triggers?
What is pl sql architecture?
how to shut down the server with 'mysqladmin'? : Sql dba
Can I join the same table twice?
Write a query to genarate target column.Please answer me. Advance Thanks. Src Tgt Q10 Quarter to 2010 Q90 Quarter to 1990 Q80 Quarter to 1980 Q74 Quarter to 1974
What is a sql profiler?
What is the best partition size for windows 10?
What are sql data types?
Which join is default?
What is the trigger in sql?
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)