--[!]
테이블제약조건

 

--[0] tempdb 사용

Use TempDB

Go

 

--[1] 실습용테이블생성: 간단한줄공지사항(뉴스) 게시판

-- 글번호, 카테고리, 제목, 링크, 타겟, 작성일

Create Table Categories

(

       CategoryID           --[!] 카테고리일련번호

             Int            --[0] 데이터형식

             Identity(1, 1) --[1] 자동증가값: 1부터1씩증가

             Primary Key,   --[2] 기본키(고유한식별자(Identifier)) : 레코드구분하는유일한값

                            --    기본키는NOT NULL 포함, UNIQUE도포함

                                       

       CategoryName        --[!] 카테고리이름

             VarChar(25)

             Not Null --[3] 널값제약: NOT NULL : 반드시값입력, NULL(널허용)

)

Go

 

Create Table dbo.FrontBoards

(

       ItemID                     --[!] 일련번호

             Int Identity(1, 1) Primary Key,

       Title

             VarChar(150) Not Null

             Unique,          --[4] 유일키제약: 테이블에서유일한값(중복불가)

       Url VarChar(255)

             Null,               --[5] 널제약: NULL : 값을입력하지않아도무관

       [Target] VarChar(10) Null 

             Check               --[6] 체크제약: 주어진데이터만입력허용

             (

                    Target In('_top', '_blank', '_parent', '_self')

             ),

       CreatedDate DateTime

             Default(GetDate()),        --[7] 기본값제약: 레코드생성시기본값부여

       CategoryID Int

             References Categories(CategoryID)       --[8] 외래키: 다른테이블의기본키와동일한값

)           

Go

 

 

--[1] 예시데이터입력: 자동증가값체크

Insert Into Categories Values('공지');

insert Categories Values('뉴스');

Select * From Categories Order By CategoryID Asc

 

 

--[2] 기본값(Default) 제약조건

Insert Into FrontBoards

Values ('닷넷코리아', 'http://www.dotnetkorea.com', '_blank', Default, 1);

Insert Into FrontBoards(Title, Url, Target, CategoryID)

Values('비주얼아카데미', 'http://www.VisualAcademy.com', '_self', 2);

Select * From FrontBoards

 

 

--[3] 널값체크

--Insert Into FrontBoards(Url) Values('http://www.JavaCampus.com');

 

 

--[4] 유일키제약조건확인

--Insert Into FrontBoards

--Values ('닷넷코리아', 'http://www.dotnetkorea.com', '_blank', Default, 1);

 

 

--[5] 체크제약조건

--Insert Into FrontBoards

--Values ('자바캠퍼스', 'http://www.JavaCampus.com', '_main', Default, 1);

 

 

--[6] 외래키(Foreign Key)

--Insert Into FrontBoards

--Values ('자바캠퍼스', 'http://www.JavaCampus.com', '_blank', Default, 3);





'.NET프로그래밍 > SQL Server 2008' 카테고리의 다른 글

23. 수학관련함수  (0) 2009.09.11
22. 집계 함수  (0) 2009.09.11
20. 제어문 - while문  (0) 2009.09.11
19. 제어문 - if문  (0) 2009.09.11
18. 연산자  (0) 2009.09.11
Posted by holland14
: