안규 공부방

MS-SQL > Data Integrity - 프라이머리 키(PRIMART KEY)

등록일 : 2017-07-03 19:35 조회수 : 92,571

요즘은 해킹과 바이러스가 난무하는 때입니다.
 
해킹에 주의하시구 바이러스에 주의하세요.
 
코드레드란 악성 바이러스가 IIS을 죽이고 있네요...
 
열분은 이미 패치 하셨겠지여?
 
저희 회사 서버를 기냥 놔뒀다가,,, 주말을 보내구 복귀하는 순간,, 사장님께서 날벼락을,,, 흐흐흑,
 
저야 뭐,,, 11시를 넘겨서리 출근해서 ,, (_._)  위기를 모면했지만 서두,, 헤헤
 
궁금하신분들은 http://www.certcc.or.kr/paper/incident_note/2001/in2001_010.html 가서
 
읽어보세요....
 
요넘은 하나의 서버가 걸리면 물려있는 모든 네트웍 서버에 감염을 시킨다네여.. 딥따 멋진넘이지여?
 
 
아래에서 패치를 다운 받은 후 재부팅 하세요

nt4.0
http://www.microsoft.com/korea/technet/security/bulletin/downloads/MS01-033/korq300972i.exe

win2000
http://www.microsoft.com/korea/technet/security/bulletin/downloads/MS01-033/
q300972_w2k_sp3_x86_ko.exe

그럼, 오늘은 PRIMARY KEY에 대해서 간단히 읽고 넘어가도록 하겠습니다.
 
프라이머리 키 CONSTRAINTS는 데이터 모델링의 프라이머리 키를 구현한 것으로 하나 이상의
 
컬럼에 대해 선언하며 중복된 키 값이 저장되는 것을 막아서 레코드를 유일하게 구분할수 있게
 
해 준답니다.
 
아래 박스는 프라이머리 키 Constraints를 사용할때 고려해야 할 사항입니다.
 
     
■ 테이블에 하나만 선언할수 있다.
■ 테이터가 insert,update 될때 검사한다.
■ not null 컬럼에만 선언할 수 있다. 즉, 해당컬럼에 null값이 들어갈수 없당.
■ 키 컬럼의 데이터는 합해서 900 byte를 넘길수 없다.
■ 내부적으로 유니크 인덱스를 만들어서 사용한다..(기본값은 클러스터 인덱스이다.
 
 
그럼, 프라이머리 키 선언 법에 대해서 간단하게 살펴 보도록 하겠습니다.
     
CREATE TABLE pk_const1
(
id int NOT NULL PRIMARY KEY,
name VARCHAR(10) NULL
)
 

      두개의 컬럼에 대해 프라이머리 키를 선언하는 방법입니다.
       
     
CREATE TABLE pk_const2
(
jumin1 char(6) NOT NULL,
jumin2 char(7) NOT NULL,
name varchar(20) null
)
ALTER TABLE pk_const2
ADD CONSTRAINT pk_name
PRIMARY KEY (jumin1,jumin2)
 
     
위의 에제는 두개의 프라이머리 키를 선언하는 방법입니다. 이것은 내부적으로 두개의 컬럼 모두를
유니크 복합 인덱스가 만들어 진답니다.
     
그럼, 오늘은 간단한 프라이머리 키에 대해서 알아보았습니다.   
 
※ 혹시 도움이 되셨다면 댓글에 한마디 남겨주세요!
작성자   비밀번호
자동글 방지     (자동글 방지 기능입니다.)
내용   댓글달기 
이메일 문의 : cak0280@nate.com  
Copyright 2000 By ENTERSOFT.KR All Rights Reserved.