[MySQL] 명령어, DB Table
SQL 데이터베이스 관련 명령어
데이터베이스 접속 명령
mysql -u계정아이디 -p비밀번호 데이터베이스명
1
c:\>mysql -usong -p1234 song_db
또는
1
2
c:\>mysql -usong -p1234 // 계정로그인
mysql>use song_db // use 명령을 사용해 작업하려는 데이터베이스 선택
데이터베이스 빠져나오기
1
\q
데이터베이스 생성, 목록 출력
데이터베이스 생성과 삭제 권한은 관리자에게만 있으므로 root로 접속해서 명령을 실행해야 한다!!!! (중요)
데이터베이스 생성 명령 : creat database 데이터베이스명;
데이터베이스는 관리자만 생성할 수 있기 때문에 반드시 root계정으로 생성한 후,
데이터베이스 출력 명령을 통해 그 존재를 확인해 본다.
1
2
3
c:\>mysql -uroot -p mysql // root 계정으로 접속, 비밀번호는 엔터
mysql>create database sample1; // sample1 데이터베이스 생성
mysql>show databases; //데이터베이스 목록 출력 명령
데이터베이스 목록 출력 / sample1 을 확인할 수 있다.
디비세팅은 아래 포스팅을 참고하자 XAMPP MySQL 새로운 계정 생성하기
데이터베이스 삭제하기
데이터베이스 삭제 명령 : drop database 데이터베이스명;
1
2
3
c:\>mysql -uroot -p mysql // root 계정 접속
mysql>drop database sample1; // sample1 데이터베이스 삭제
mysql>show databases; //데이터베이스 목록 출력 명령
삭제되었다. Query OK! 두번 물어보지 않으니 조심조심
MySQL 테이블 관련 명령
테이블 : 실제 데이터가 저장될 수 있는 공간
데이터베이스 테이블 생성
create table 테이블명(
필드명1 타입,
필드명2 타입,
……
PRIMARY KEY(필드명)
);
1
2
3
4
5
6
7
8
9
mysql>create table friend(
num int not null, // *필수항목(primary-key) 값이 꼭 들어가야 함 / int : 정수, null값 안됨
name char(10), // char(10) : 글자(글자수)
address char(80),
tel char(20),
email char(20), // not null이 없으므로 필수항목이 아니다.
primary key(num) // 기본키는 필드값은 서로 중복되지 않는 유일한 값을 갖는다. 구별되는 필드
);
1
2
3
4
5
6
7
8
9
10
11
12
mysql -usong -p1234 song_db // 데이터베이스 접속
mysql>create table friend(
num int not null,
name char(10),
address char(80),
tel char(20),
email char(20),
primary key(num)
);
mysql>show tables; // 테이블 생성 확인
데이터베이스 테이블 구조 확인
desc 테이블명;
1
mysql>desc friend;
데이터베이스 테이블 수정 명령
새로운 필드 추가 명령
alter table 테이블명 add 새로운필드명 필드타입 [first 또는 after 필드명];
1
2
mysql>alter table friend add age int; // friend 테이블에 age 필드를 정수형으로 추가 (제일 마지막에 추가됨)
mysql>alter table friend add hp char(20) after tel; // tel 필드 바로 다음에 hp필드를 추가
age filed가 맨 마지막에 추가된 것을 확인할 수 있다.
필드 삭제 명령
alter table 테이블명 drop 삭제할 필드명1, drop 필드명2, ….;
1
2
3
mysql>alter table friend drop email; // email 필드 삭제
mysql>alter table friend drop age, drop hp; // age, hp 필드 삭제
mysql>desc friend;
필드 수정 명령
alter table 테이블명 change 이전필드명 새로운필드명 필드타입;
1
2
mysql>alter table friend change tel phone int; // tel 필드를 phone 필드 정수형으로 수정
mysql>desc friend;
필드 타입 수정 명령
alter table 테이블명 modify 필드명 새로운타입 not null;
1
2
mysql>alter table friend modify name char(20); // name 필드 타입을 char(20)로 수정
mysql>desc friend;
데이터베이스 테이블명 수정 명령
alter table 이전테이블명 rename 새로운테이블명;
1
2
mysql>alter table friend rename student;
mysql>show tables;
데이터베이스 테이블 삭제 명령
drop table 테이블명;
1
2
mysql>drop table student;
mysql>show tables;
데이터베이스 문자셋 확인하기
mysql>show variables like ‘c%’;
1
mysql>show variables like 'c%';














