MySQL | 기본 명령어
포스트
취소

MySQL | 기본 명령어

이전 장에서 이어진다

MySQL 프롬프트 접속

1
docker exec -it mysql-service mysql -u root -p

용어

  • 데이터베이스(Database)
  • 테이블(Table), 릴레이션(Relation)
  • 행(Column), 레코드(Record), 튜플(Tuple)
  • 열(Row), 필드(Field), 속성(Attribute)

동일한 개념을 여러 용어로 표현하나, 여기서는 데이터베이서, 테이블, 행, 열 로 나타낸다

데이터베이스 조작

데이터베이스 생성

1
CREATE DATABASE mydb;

mydb란 이름의 데이터베이스를 생성한다

데이터베이스 조회

1
show databases;

데이터베이스 제거

1
DROP DATABASE mydb;

데이터베이스 선택

1
USE mydb;

사용할 데이터베이스를 선택한다

이후 테이블 조작 등에서 데이터베이스 명을 붙이지 않으면 use로 선택한 데이터베이스가 된다

테이블 조작

테이블 생성

1
2
3
4
CREATE TABLE `MyTable` (
    [ 이름] [데이터타입] [제약조건],
    ...
);

예시

1
2
3
4
5
CREATE TABLE `user` (
    `id` INTEGER PRIMARY KEY,
    `username` CHAR(20) UNIQUE,
    `passwd` CHAR(20),
);

테이블 삭제

1
DROP TABLE `MyTable`

테이블 확인

1
DESCRIBE `MyTable`

열 추가

1
ALTER TABLE `MyTable` ADD `id` INT;

열 수정

1
ALTER TABLE `MyTable` CHANGE `oldColumn` `newColumn` <NewType>;

열 속성

1
ALTER TABLE `MyTable` MODIFY `oldColumn` <NewType>;

데이터 타입

제약 조건

속성역할
NOT NULLNULL이 들어갈 수 없다
UNIQUE이 열에는 유일한 값만 들어갈 수 있다
PRIMARY KEY기본키로 지정한다. 기본키는 자동으로 NOT NULL+UNIQUE 속성을 가진다
AUTO_INCREMENT자동으로 고유한 값을 채워넣는다
CHECK 조건식조건식에 만족하는 값만 들어갈 수 있다
FOREIGN KEY외래값
DEFAULT 기본값값을 넣지 않을 경우 지정한 기본값을 넣는다
FIRST모든 열 중 가장 처음에 위치하도록 한다
AFTER 열지정한 열 다음에 위치히도록 한다

데이터 추가

INSERT 문

1
INSERT INTO `MyTable` VALUES ('user', '1234')

데이터 조회

select 문

1
SELECT * FROM `MyTable`

MyTable 테이블의 모든 행의 데이터를 가져온다

1
SELECT `Name` AS `Alias` FROM `MyTable`

MyTable 테이블에서 모든 행의 Name 데이터을 가져온다

1
SELECT `Name` AS `Alias` FROM `MyTable`

where 문

1
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.
바로가기