오라클에서 테이블 생성할때 질문좀 드리겠습니다.
1번 테이블
1번데이터 A 컬럼 : 20111212110111 (type : number(14))
1번데이터 B 컬럼 : member_pc_1 (tyep : varchar2(50))
2번데이터 A 컬럼 : 20111212111011 (type : number(14) )
2번데이터 B 컬럼 : member_pc_2 (type : varchar2(50))
2테이블
PK 년 2011 (type : number(4))
PK 월 11 (type : number(2))
PK 일 12 (type : number(2))
PK 컴퓨터제조사 11 (type : number(2))
PK 컴퓨터코드 0111 (type : number(4))
컴퓨터명 PC_1 (type : varchar(50))
1번 데이터
PK 년 2011 (type : number(4))
PK 월 11 (type : number(2))
PK 일 12 (type : number(2))
PK 컴퓨터제조사 11 (type : number(2))
PK 컴퓨터코드 1011 (type : number(4))
컴퓨터명 PC_2 (type : varchar(50))
PK를 다 NUMBER로 잡았을때 문제점이 있을 가요?
위 테이블 설계대로라면 문제가 될게 있을가요?
아니면... 그냥 CHAR 나 VARCAR2를 이용하여 PK를 잡는게 올바른것인가요?
위의 데이터들은 순수 숫자들만 사용합니다.
number, char, varchar type으로 컬럼을 잡을때 이런데이터들이 유리하다라는것이 있으시면 알려주시면 감사하겠습니다~~
위에서 불합리한 점은 저 두데이터를 비교하려할때
1번테이블.A컬럼 == 년||lpad(월,2)||lpad(일,2)||lpad(컴퓨터제조사,2)||lpad(컴퓨터코드,4)
이런식으로 비교를 해야하는건데...
너무 쓸데없이 오라클함수를 쓰는것인가요? |