오늘은 데이터베이스 언어 중,
정의 부분을 맡고 있는
CREATE, DROP, ALTER 에 대해
정리해보자.
Mysql관련 로그인 부분은
이전 글에서 확인 가능하니 참고 바란다.
해당 글은 로그인 이후의 동작을 기준으로 정리한다.
먼저 테스트 데이터베이스를 하나 만들자.
create database test;
일단 나는 test라는 데이터베이스를 하나 만들었다.
잘 만들어졌는지 확인하려면,
show databases;
이렇게 test라는 데이터베이스가 조회되면
잘 만들어진거다.
이제 만든 데이터베이스를 사용하도록 해보자.
먼저 test 데이터베이스를 이용하기 위해,
use DB명
여기까지 했으면,
이제 본격적으로 DDL을 사용할 준비가 끝난거다.
그럼 가장 먼저 해야할 건
당연히 테이블을 만드는 일이다.
이름부터 알 수 있겠지만 create 문을 사용하면 된다.
사용법은 이렇다.
create table '테이블명' (
'컬럼명' 컬럼타입 옵션들,
'컬럼명' 컬럼타입 옵션들
); ENGINE='사용할 엔진'
여기서 옵션에는 정말 많은 옵션이 존재하니,
인터넷 검색해서 찾아보면 된다.
실제로 사용해보자.
나는 test_table2 라는 테이블을 만들거고,
number, id, password, phonenumber 라는 컬럼을 만들고
number를 primary key로 설정, null 값 입력 불가 및 자동 증가 옵션을 준 상태로 만들어 볼거다.
여기서는 primary key 옵션, not null 옵션, auto_increment 옵션을 확인할 수 있다.
해석 그대로의 기능이고,
여기서 auto increment는 직접 값을 넣지 않아도 설정한 카운트 만큼 값이 자동 증가하여 insert 되는 옵션이다.
따로 설정해주지 않을 경우 기본 값은 1이다.
위에서 테이블을 만들었는데,
뭔가 값을 잘못줘서 만들었다면
alter 문을 이용하여 수정할 수 있다.
alter문은 종류가 많아 다 해보진 않을거고,
가장 많이 쓰는 modify 정도만 직접 해보고 나머진 설명만 적겠다.
위에서 만든 테이블은 아래와 같다.
여기서 현재 패스워드가 15자까지 되어 있는데,
이를 20자까지 늘리고 싶다. 이럴때 alter와 modify를 사용해서 수정할 수 있다.
사용법은 이렇다.
alter table '테이블명' modify '바꿀 컬럼명' '바꿀 컬럼 타입';
위와 같이 사용하면 된다.
이제 password에 type이 varchar(20)이 된 걸 확인할 수 있다.
이제 alter에 종류에 대해 짧게 짧게 정리해보겠다.
테이블 이름 변경 : ALTER TABLE [테이블명] RENAME [바꿀이름];
테이블 엔진 변경 : ALTER TABLE [테이블명] ENGINE = [형식];
테이블 컬럼 추가 : ALTER TABLE [테이블명] ADD [컬럼명] [타입]; * add는 무조건 제일 끝에 컬럼이 추가된다. 중간 삽입 불가.
테이블 컬럼명 변경 : ALTER TABLE [테이블명] CHANGE [변경 전 컬럼명] [변경 후 컬럼명] [컬럼타입];
테이블 컬럼 삭제 : ALTER TABLE [테이블명] DROP [컬럼명];
이정도만 알면 왠만한 부분은 응용하여 수정할 수 있을거다.
이제 테이블을 삭제해볼 일만 남았다.
사실 삭제는 데이터 삭제가 아니고서야
현업에서 거의 하지 않기 때문에
테이블 삭제의 경우 그냥 알고만 있으면 된다.
현재 내 테이블은 이렇게 존재하는데,
test_table 을 삭제해보겠다.
간단하다.
drop table '테이블명';
삭제된 걸 확인할 수 있다.
같은 방법으로 DB도 삭제가능하다.
drop database 'db명';
이건 나중에 쓸 일 있으면 직접해보길 바란다.
이상 DDL에 관해 알아보고
사용해보았다.
다음 글에서는 DML에 관해 정리해보겠다.
'DB > mysql' 카테고리의 다른 글
다중 치환(case) (1) | 2024.09.25 |
---|---|
Rocky 8.6 linux에 mysql 설치하기 (0) | 2023.08.28 |