혹 이런 고민에 빠진 독자가 있을지 모르지만, SELECT, UPDATE, DELETE 등의 SQL의 예약어를 테이블의 이름이나 열 이름으로 사용해야 할 경우가 있다면 이 기사가 도움이 될 것이다.
기본적으로 예약어들을 사용한다는 것은 이후 관리상의 문제나 여러 가지 문제를 발생시키기 때문에 사용하지 않는 것이 좋다.
하지만 아쉽게도 다른 데이터베이스에서 SQL Server 등으로 마이그레이션을 했을 때 예약어가 테이블명이나 필드명으로 사용되어 어쩔 수 없이 이용해야 한다면 다음과 같이 이용할 수 있다.
SQL Server에서 열 이름은 "["과 "]"로 묶어 표기하면 데이터베이스 객체 이름으로 인식된다.
오라클에서 사용하고 싶다면 큰따옴표로 묶어 기술하면 된다.
Test 테이블에 FROM 필드와 TO열을 생성하고 싶다면 다음과 같은 명령어가 필요하다.
- SQL Server일 경우
- CREATE TABLE test ( [FROM] int null, [TO] int null )
- Oracle일 경우
- CREATE TABLE test ( "FROM" NUMBER(8) null, "TO" NUMBER(8) null )
이를 통해 FROM필드와 TO필드를 가진 테이블이 생성된다. SELECT나 UPDATE에서도 같은 서식을 사용하여 이용할 수 있다.
- SQL Server일 경우
- SELECT [FROM] FROM test WHERE [TO] = 45
- Oracle일 경우
- SELECT "FROM" FROM test WHERE "TO" = 45
* 테이블명이나 필드명등에 공백문자열이 포함되어 두단어 이상으로 사용하고 싶을때도 []를 사용하면 된다.
자료출처 : http://korea.internet.com
'Database > ORACLE' 카테고리의 다른 글
[오라클Tip] TRUNCATE vs DELETE (0) | 2011.06.29 |
---|---|
테이블스페이스 생성 및 확장 (0) | 2011.05.07 |
[Oracle]테이블스페이스 생성하기 (0) | 2011.05.07 |
[오라클]테이블에 주석 입력 (0) | 2011.04.29 |
오라클 덤프/임포트 , 유져생성 및 권한주기 (0) | 2011.04.06 |