본문 바로가기

MySQL

Mysql 홀로서기 3일차

자 이번에는 테이블에 대해 알아봅시다 

일단

#mysql -u root -p flag 

저번에 만든 flag 데이터베이스 접속합니다

그후

mysql> show tables;

하면 아직 만든것이 없어

empty set이라는 구문이 출력됩니다.

그럼 인제부터 테이블 구성을 해봅시다.

자 원래 테이블 정의는 매우 어렵습니다 . 여러분 여러 분야를 여러개로 쪼개서 그 레코드와 테이블을 정의하여야 하지만 그것은 제외하고 간단한것으로 만드는 법정도만 알아보겠습니다.

일단 저는 새롭게 시작하는 php5 programming이라는 책의 내용을 바탕으로 실습해보겠습니다.

 

영업사원 테이블에 레코드 값들이 되있습니다.

 

 sno(사번)

sname(성명)

hire(입사날) 

point(실적)

 branch(사는곳)

 s1

abc

1998-10-12 

200 

 aa

 s2

bcd

 2000-05-03

 400

 bb

 s3

 cde

 2002-03-01

 100

 cc

 s4

 def

 2003-06-02

 300

dd 

 s5

 efg

 2004-03-01

 200

 ff

 

다음은 차 입니다.

 cno(차번)

cname(차명) 

cc(배기량)

weight(무게) 

 outlet(출고지)

c1 

sonata

 1800

1200 

cc 

 c2

sonata

 2000

 1300

 cc

 c3

rezo

 1500

 1100

 aa

 c4

rezo

 2000

 1200

 aa

 c5

canival

 3000

 1800

 ff

 c6

 sm5

 2000

 1300

 dd

 c7

 sm5

 2500

 1350

 dd

 

다음은 판매입니다.

 

 sno(사번)

cno(차번) 

qty(판매량) 

 s1

c1 

12 

 s1

 c2

 20

 s1

 c3

 42

 s1

 c4

 18

 s1

 c5

 10

 s1

 c6

 null

 s2

 c1

 34

 s2

 c2

 14

 s3

 c2

 21

 s4

 c2

 null

 s4

 c4

 31

 s4

 c5

 13

 

그럼 이형식에 맞게 테이블을 생성해보겠습니다.

일단 영업사원인 salesman이라는 테이블을 생성해볼께요.

명령어를 해봅시다

mysql> create table salesman(

       -> sno char(4) PRIMARY KEY,

       -> sname char(10) NOT NULL,

       -> hire date;

       -> point smallint,

       -> branch char(10)

       ->);

Query OK 가 뜨면 제대로 적용 된것이고 성질을 알아보면

sno는 4바이트의 char형 입력 받고 sname은 10바이트 char형 hire는 날짜형식 point는 작은수의int형

이정도의 뜻을 갖고있습니다.

 

자 그럼 위와 같은 방식으로 car , sale의 이름으로 생성해봅시다

테이블 생성 확인은

mysql>describe (테이블명) 해주시면 됩니다.

 

car 테이블입니다.

mysql> create table car(

       -> cno char(2) primary key,

       -> cname char(10) not null,

       -> cc smallint,

       -> weight smallint,

       -> outlet char(10)

       -> );

입니다.

 

다음은 sale 입니다.

mysql> create table sale

      -> sno char(4) not null,

      -> cno char(2) not null,

      -> qty smallint

      -> );

다음 구성된 테이블 전체를 확인해 봐요

 

mysql>show tables;

car

sale

salesman 이 뜨시면 성공입니다.

 

이렇게 만든 테이블 삭제 명령어는

 

mysql> drop table <테이블이름>

입니다.

 

자 다음 기본적으로 테이블 변경 구문은 ALTER TABLE입니다 이것으로 여러가지를 활용해봅시다.

테이블 이름바꾸기 명령어는

mysql> alter table <원래 테이블 이름> rename <바꿀 테이블이름>;

 

입니다

 

기존의 테이블에 새로운 속성을 추가하는 명령어는

mysql> alter table car add <추가할속성이름> <추가할속성성질>;

입니다.

 

기존의 테이블에서 특정 속성을 제거하는 명령어는

mysql> ALTER TABLE car drop column <삭제할 속성이름>

입니다.

 

자 다음으로 기존의 테이블에서 특정속성의 데이터 타입 변경 하는 명령어는

mysql> alter table <테이블이름> change <특정속성이름> <특적속성이름> <바꿀 속성성질>;

입니다.

 

마지막으로 특정 속성의 명칭 변경하는 명령어는

mysql> alter table <테이블 이름> change <특정속성이름> <바꿀 특정속성이름> <바꿀 속성성질>;

입니다.

 

다음 시간에는 이렇게만든 테이블에 레코드삽입 법에 대해 알아볼께요

[출처] Mysql 홀로서기 3일차|작성자 Securely

'MySQL' 카테고리의 다른 글

Mysql 홀로서기 6일차  (0) 2012.07.11
Mysql 홀로서기 5일차  (0) 2012.07.11
Mysql 홀로서기 4일차  (0) 2012.07.11
Mysql 홀로서기 2일차  (0) 2012.07.11
Mysql 홀로서기 1일차  (0) 2012.07.11