myqsl-DDL

김성현·2020년 10월 19일

실습

목록 보기
12/13

○ 환경

  • 리눅스 6.7(mysql 5.7.13)

○ 실습

  • 데이터베이스 생성 : mysqltest
  • 테이블 생성 : member, freeboard
  • 테이블 구조(member) : id (varchar(20) N-N unique), pass (varchar(20) N-N), name (varchar(20) N-N), gender (char(10) NULL), tel (varchar(20) NULL default '010-0000-0000'), address (varchar(90) NULL)
  • freeboard : num (INT N-N auto_increment primary key), name (varchar(20) N-N), email (Varchar(20) NULL), subject (varchar(100) N-N), content (varchar(500) N-N), regist_day (varchar(20) NULL), ip (varchar(20) NULL)

◇ 데이터베이스 생성

mysql>create database mysqltest;

◇ 테이블 생성
테이블 member

mysql>use mysqltest
mysql>create table member(
id varchar(20) not null unique,
pass varchar(20) not null,
name varchar(20) not null,
gender char(10),
tel varchar(20) default '010-0000-0000',
address varchar(90));

테이블 freeboard

mysql>use mysqltest
mysql>create table freeboard(
num int not null auto_increment primary key,
name varchar(20) not null,
email varchar(20),
subject varchar(100) not null,
content varchar(500) not null,
regist_day varchar(20),
ip varchar(20));

○ 수정

  • member 테이블의 가장 위에 일련 번호 컬럼 추가
    컬럼 명 : no, 데이터 타입 : int, 옵션 : 번호 자동증가, 제약조건 : primary key
mysql>alter table member add no int auto_increment primary key;
  • member 테이블의 비밀번호 컬럼 데이터 타입 varchar(50)으로 수정
mysql>alter table member modify pass varchar(50) not null;
  • member 테이블 성별 컬럼 나이 컬럼으로 변경
    컬럼명 : age, 데이터 타입 : int
mysql>alter table member change gender age int;
  • member 테이블의 주소 컬럼을 작성일시 컬럼으로 변경
    컬럼명 : reg_date, 데이터 타입 : datetime, 제약조건 : not null
mysql>alter table member change address reg_date datetime not null;
  • member 테이블의 전화번호 컬럼 삭제
mysql>alter table member drop tel;
  • member 테이블 이름 sql_mem으로 변경
mysql>alter table member rename sql_mem;
  • freeboard 테이블의 이름 컬럼 다음에 게시글 비밀번호 컬럼 추가
    컬럼명 : passwd, 데이터 타입 : varchar(20), 옵션 : default 0000
mysql> alter table freeboard add passswd varchar(20) default '0000' after name;
  • freeboard 테이블의 글 내용 컬럼 데이터 타입 text로 변경
mysql> alter table freeboard modify content text not null;
  • freeboard 테이블의 글쓴 날짜 컬럼 이름 및 데이터 타입 변경
    컬럼명 : reg_date, 데이터 타입 : datetime, 제약조건 : not null
mysql> alter table freeboard change regist_day reg_date datetime not null;
  • freeboard 테이블의 메일주소 컬럼 삭제
mysql> alter table freeboard drop email;

0개의 댓글