6.테이블만들기

1,335
-1

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,335
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

6.테이블만들기

  1. 1. 6 장 . 테이블 만들기 MS-SQL 2000 전문가로 가는 지름길 1 권 SQL Study(café.naver.com/endofdb) 김광중 (visualwizard@ncsoft.com)
  2. 2. 목차 1. 데이터 베이스 개체 2. 테이블 만들기 3. 테이블 수정하기 4. 그 외
  3. 3. 1. 데이터 베이스 개체 데이터 베이스 개체란 ??? 데이터 베이스에 존재하는 모든 것 . 테이블 , 뷰 , 자료형 , 색인 , 저장 프로시저 , 트리거 , 디폴트 , 규칙
  4. 4. 1. 데이터 베이스 개체 테이블 : 레코드의 집합 . 각 레코드는 하나 이상의 컬럼으로 구성 뷰 : 기존 테이블에 대해 재구성한 가상의 테이블 색인 : 레코드를 쉽게 찾도록 하는 테이블에 대한 부가 정보 저장프로시저 : 미리 컴파일된 SQL 문장들의 집합 트리거 : 테이블 데이터의 변경에 따라 자동으로 수행되는 프로시저 디폴트 : 값을 설정하지 않았을 때 , 자동으로 입력되는 값 ( 테이블과 독립적 ) 규칙 : 각 컬럼의 데이터에 대한 조건 ( 제약조건과는 다르다 . 역시 테이블과 독립적 )
  5. 5. 1. 데이터 베이스 개체 개체에 이름 붙이기 . williamc1 . pubs . dbo . titles 서버 이름 . 데이터베이스 이름 . 오너 이름 . 오브젝트 이름
  6. 6. 1. 데이터 베이스 개체 SELECT * FROM williamc1 . pubs . dbo . titles 서버 이름 . 데이터베이스 이름 . 오너 이름 . 오브젝트 이름
  7. 7. 1. 데이터 베이스 개체 SELECT * FROM williamc1 . pubs . dbo . titles 서버 이름 . 데이터베이스 이름 . 오너 이름 . 오브젝트 이름 현재 접속해서 사용하고 있는 서버 와 개체 ( 테이블 ) 가 있는 서버 가 같다면 이름 생략 가능 SELECT * FROM pubs . dbo . titles
  8. 8. 1. 데이터 베이스 개체 SELECT * FROM pubs . dbo . titles 데이터베이스 이름 . 오너 이름 . 오브젝트 이름 현재 접속해서 사용하고 있는 DB 와 개체 ( 테이블 ) 가 있는 DB 가 같다면 이름 생략 가능 use pubs ; 이름이 pubs 인 DB 에 접속 . SELECT * FROM dbo . titles ;pubs DB 안의 titles 테이블을 조회
  9. 9. 1. 데이터 베이스 개체 SELECT * FROM dbo . titles 오너 이름 . 오브젝트 이름 현재 로그온 한 사용자가 오너 이거나 dbo 라면 생략할 수 있다 . SELECT * FROM titles ; dbo 는 생략 가능
  10. 10. 1. 데이터 베이스 개체 PARSENAME 함수는 지정된 이름의 개체가 있는지 여부를 나타내지 않으며 지정된 개체 이름에서 지정된 부분만 반환 합니다 PARSENAME( ‘object_name’ , object_piece) 1 = 개체 이름 2 = 소유자 이름 3 = 데이터베이스 이름 4 = 서버 이름 SELECT PARSENAME(‘pubs..authors’, 4 ) as ‘Server Name’
  11. 11. 1. 데이터 베이스 개체 PARSENAME 함수의 다른 용도 http://blog.naver.com/borum81?Redirect=Log&logNo=60047054481
  12. 12. 2. 테이블 만들기 테이블 만드는 방법들 <ul><li>T-SQL( 스크립트 ) 을 이용하여 생성 </li></ul><ul><li>Enterprise Manager (tool) 을 이용하여 생성 </li></ul>
  13. 13. 2. 테이블 만들기 테이블 만드는 방법들 <ul><li>T-SQL( 스크립트 ) 을 이용하여 생성 </li></ul>CREATE TABLE [ dbname.[owner]. | owner. ] table_name ( { <column_definition> | <computed_column_definition> | <colum_set_definition> } [ <table_contraint> ] [ , … n ] ) [ ON { filegroup | DEFAULT } [ TEXTIMAGE_ON http://msdn.microsoft.com/ko-kr/library/ms174979.aspx
  14. 14. 2. 테이블 만들기 테이블 만드는 방법들 <ul><li>T-SQL( 스크립트 ) 을 이용하여 생성 </li></ul>CREATE TABLE table_name ( id INT NOT NULL , name CHAR(10) NULL ) <column_definition> ::= column_name <data_type> [ FILESTREAM ]   [ COLLATE collation_name ] [ NULL | NOT NULL ] [ [ CONSTRAINT constraint_name ] DEFAULT constant_expression ] | [ IDENTITY [ ( seed ,increment ) ] [ NOT FOR REPLICATION ] ] [ ROWGUIDCOL ] [ <column_constraint> [ ...n ] ]      [ SPARSE ] http://msdn.microsoft.com/ko-kr/library/ms174979.aspx
  15. 15. 2. 테이블 만들기 널 값 허용 여부 : NULL / NOT NULL ANSI null default SET ANSI_NULL_DFLT_ON
  16. 16. 3. 테이블 수정하기 테이블에 컬럼 추가하기 ALTER TABLE table_name ADD new_column VARCHAR(20) NULL 컬럼을 추가 시 NOT NULL 은 불가능 하지만 , 데이터베이스에 DEFAULT 제약 이 걸려있다면 가능 하다 .
  17. 17. 3. 테이블 수정하기 테이블에 컬럼 변경하기 ALTER TABLE table_name ALTER COLUMN column_name TYPE NULL 컬럼의 타입을 변경할 때는 자료 변환이 가능해야 한다 .
  18. 18. 3. 테이블 수정하기 테이블에 컬럼 삭제하기 ALTER TABLE table_name DROP COLUMN column_name
  19. 19. 3. 테이블 수정하기 테이블 삭제하기 DROP TABLE table_name 테이블이 사용중이거나 , 다른 테이블에 의해 참조되고 있는 경우 삭제할 수 없다 . 테이블이 삭제된다고 그와 관련된 뷰 or 프로시져 들도 삭제되지는 않는다 .
  20. 20. 3. 테이블 수정하기 테이블 내용 모두 비우기 TRUNCATE TABLE table_name 테이블의 모든 행을 제거하는 구문 DELETE 구문은 DML TRUNCATE 구문은 DDL DDL 은 실행 시 바로 DB 에 내용이 반영 DML 은 버퍼상에 명령어를 넣은 후 실행 즉 , COMMIT 이 되어야 실제 반영
  21. 21. 4. 그 외 테이블에 기본 키 설정하기 <ul><li>PRIMARY KEY = UNIQUE + NOT NULL </li></ul><ul><li>테이블 생성 시 기본 키 설정 </li></ul><ul><li>ALTER TABLE 로 기본 키 설정 </li></ul><ul><li>EM 에서 만들거나 수정 </li></ul>
  22. 22. 4. 그 외 시스템 스토어드 프로시져 Sp_help : 개체에 대한 정보를 보여줌 Sp_helpconstraint : 주어진 테이블에 대한 제약을 보여줌 Sp_tables : 테이블 정보를 보여줌 Sp_columns : 테이블의 컬럼 정보들을 보여줌
  23. 23. 끝 QnA

×