MySQL 데이터베이스 관리 기초

MySQLBeginner
지금 연습하기

소개

이번 챌린지에서는 데이터베이스에서 DDL(데이터 정의 언어) 관련 작업을 수행합니다. 테이블을 직접 생성하고 구조를 수정하며, 데이터를 비우거나 테이블 자체를 삭제하는 등의 실무적인 작업을 진행하게 됩니다. 이번 챌린지를 통해 CREATE, ALTER, DELETE, TRUNCATE, DROP과 같은 핵심 DDL 구문의 사용법을 완벽히 익혔는지 확인해 보세요.

DDL 종합 챌린지

이번 과제에서는 데이터베이스를 생성하고 그 안에서 다양한 DDL 관련 작업을 수행해야 합니다.

주요 작업

다음 작업들을 순서대로 완료하세요:

  1. sudo 명령어를 사용하여 비밀번호 없이 MySQL 에 접속합니다.
  2. 문자 집합이 utf8mb4로 설정된 testddl이라는 이름의 데이터베이스를 생성합니다.
  3. testddl 데이터베이스 내에 다음과 같은 구조를 가진 empdept 테이블을 생성하고 정보를 삽입합니다.
  • emp
    필드명 속성
    eid INT(5) Primary Key
    ename VARCHAR(50)
    sal DECIMAL
    deptno INT(5)
  • dept
    필드명 속성
    did INT(5) Primary Key
    dname VARCHAR(50)
  1. empdept 테이블의 기본 키 (Primary Key) 가 10부터 시작하여 자동으로 증가 (auto-increment) 하도록 수정합니다. 또한, emp 테이블의 sal 필드 데이터 타입을 정수형 (integer) 으로 변경합니다.
  2. DELETE 문을 사용하여 emp 테이블의 모든 데이터를 삭제합니다.
  3. TRUNCATE 문을 사용하여 dept 테이블의 모든 데이터를 삭제합니다.
  4. DROP 문을 사용하여 emp 테이블과 testddl 데이터베이스를 삭제합니다.

요구 사항

  1. 모든 SQL 문은 스크립트 형식으로 작성해야 하며, 파일 이름은 ddl_perations.sql로 저장합니다.
  2. 각 실행 문은 올바른 순서로 작성되어야 하며, 세미콜론과 줄바꿈으로 구분되어야 합니다.
  3. 스크립트 파일은 반드시 ~/project 디렉토리에 저장해야 합니다.

실행 예시

스크립트 작성을 마친 후, MySQL 클라이언트에서 다음 예시 코드를 사용하여 실행할 수 있습니다:

mysql> source ~/project/ddl_perations.sql

데이터베이스 및 테이블 구조를 확인하여 작업이 성공적으로 완료되었는지 검증하세요.

SHOW DATABASES;
/* 예상 출력 결과 포함:
testddl
*/
USE testddl;
DESCRIBE emp;
/* 예상 결과:
Field   Type        Null    Key     Default    Extra
eid     int(5)      NO     PRI     NULL       auto_increment
ename   varchar(50) YES            NULL
sal     int(5)      YES            NULL
deptno  int(5)      YES            NULL
*/
INSERT INTO emp(ename) VALUES('test');
SELECT eid FROM emp;
/* 예상 결과:
eid
10
*/
SHOW DATABASES;
/* 예상 결과: testddl 이 목록에 없어야 함 */

요약

축하합니다! MySQL 데이터베이스 관리 기초 챌린지를 성공적으로 마쳤습니다. LabEx 에서 제공하는 더 많은 실습을 통해 여러분의 SQL 기술을 더욱 향상시켜 보세요.

✨ 솔루션 확인 및 연습