Oracle

게시글 보기
작성자 유건데이타 등록일 2015-05-16
제목 CHR(), ASCII() SQL CHARACTER FUNCTION 사용하기
CHR(), ASCII() SQL CHARACTER FUNCTION 사용하기
==============================================

PURPOSE
---------

종종 우리는 forms, reports, pro*c 등의 프로그램에서 special character로
인해 잘못 해석되는 등의 야기될 수 있는 문제를 피하기 위하여 ASCII character로
치환하여 사용하여야 할 경우가 생긴다.

Explanation & Example
----------------------

1. '&' special character로 예를 들어보자.
'&'에 대응하는 ASCII character set은 어떻게 알아낼까?
우린 간단하게 아래와 같이 알아볼 수 있다.

SQL> select ascii('&') "Numeric Code" from dual;

Numeric Code
------------
38

SQL> select chr(38) "Character" from dual;

Character
---------
&

2. Forms의 경우에 special character를 where 절에 사용한 경우를 알아보자.

SELECT * FROM dept WHERE dname = 'SALES'||chr(38)||'REVENUE';

3.

1) 자주 쓰이는 special 값

space chr(32)
exit chr(26)
tab chr(9)
return chr(10)
escape chr(27)

2) characterset에 따른 비교

CHARACTER US7ASCII WE8DEC WWE8PC850 WE8ISO8859P1
........
0 48 48 48 48
1 49 49 49 49
2 50 50 50 50
3 51 51 51 51
4 52 52 52 52
5 53 53 53 53
6 54 54 54 54
7 55 55 55 55
8 56 56 56 56
9 57 57 57 57
.......
A 65 65 65 65
B 66 66 66 66
C 67 67 67 67
....
X 88 88 88 88
Y 89 89 89 89
Z 90 90 90 90
......
a 97 97 97 97
b 98 98 98 98
c 99 99 99 99
.......
x 120 120 120 120
y 121 121 121 121
z 122 122 122 122
.......
d - 228 132 228
v - 246 148 246
| - 252 129 252
...
i - 233 136 233
h - 232 138 232
` - 224 133 224

Reference Ducumment
---------------------
SQL Reference Guide.
Comment
등록된 코멘트가 없습니다.