엔지니어가 되고 싶은 공돌이

07. Introduction to SQL (1) - Domain type & create, drop 본문

Computer Science/Data Base

07. Introduction to SQL (1) - Domain type & create, drop

Geca 2019. 10. 16. 02:15

- SQL은 IBM 에서 개발 했으며, ANSI, ISO에서 지정된 표준언어이다.

 

7. 1 SQL Domain type

- char(n): 길이 n의 고정길이 문자열

- varchar(n): 초대 길이 n의 가변길이 문자열

- int: 정수

- smallint: 작은 정수

- numeric(p,d): p개의 수, d개의 소수점 뒤의 수.

- real, double precision: 기계종속적인 정확도를 가지는 부동소수점 수. 기계종속의 두배의 정확도를 가지는 부동소수점 수.

- float(n): 적어도 n개의 숫자의 정확도를 가지는 보동소수점 수.

 

7. 2 Create Table

- An SQL relation is defined using the create table command:

  create table r (A1 D1, A2 D2, ..., An Dn,
  (integrity-constraint1),
  ...,
  (integrity-constraintk))

- r : 릴레이션 이름

- Ai: 관계 r에서 속성들의 이름

- Di: Ai에 대한 데이터 유형

 

- Example:

   create table instructor (
                             ID                char(5),
                             name           varchar(20) not null,
                             dept_name  varchar(20),
                             salary           numeric(8,2));

 

- 릴레이션에 데이터를 넣고싶으면 아래와 같은 방법을 사용한다.

insert into instructor values (‘10211’, ’Smith’, ’Biology’, 66000);

 

<추가 기능>

1. not null: 그 속성은 null 이면 안된다.

2. primary key (A1, ..., An )

3. foreign key (Am, ..., An ) references r

 

Example:  

  create table instructor (
                             ID                char(5),
                             name           varchar(20) not null,
                             dept_name  varchar(20),
                             salary           numeric(8,2),
                             primary key (ID),
                          foreign key (dept_name) references department
)

 

- primary key는 null 아닌 것이 자동으로 보장된다.

 

7. 3 delete

- delete from student 

: student 릴레이션의 모든 tuple을 삭제.

- drop table

: r이라는 릴레이션과 관련된 모든 정보들을 삭제.

- alter table r add A D

: r은 이미 존재하는 릴레이션, A는 추가될 속성의 이름, D는 그 속성의 도메인

- alter table r drop A

: r 릴레이션에서 A 속성 제거.

Comments