[SQL] DDL, DML, DCL 실습 예제

popolarburr·2023년 3월 8일
0
post-thumbnail

실습 준비물 : XAMPP, SQLyog

실습과정 1 - 권한부여

실습하기에 앞서 root계정으로 원하는 계정을 생성하고 모든 권한을 부여해야 한다.

나는 popolarburr의 아이디에 비밀번호를 저런식으로 설정하고 모든 권한을 부여했음.

쿼리는 정상 작동.

💡 ***DCL 중 GRANT 사용***

실습과정 2 - 계정연결

파일에서 연결 버튼을 누르고, 연결이름을 설정한 후 사용자 이름 및 비밀번호에 앞서 설정한 값들 입력

성공!

실습과정 3 - 데이터베이스 및 테이블 생성

계정을 연결했으면 데이터베이스와 테이블을 생성해야한다.

  1. 데이터베이스 생성 CREATE DATABASE exam;

  1. 생성한 데이터베이스 exam 을 사용하도록 설정. → Use exam;
  • 해당코드를 입력하면 상단에 선택된 데이터베이스가 exam으로 변경

  1. 데이터베이스에 테이블을 생성.
CREATE TABLE practice1 (
title VARCHAR(100),
content TEXT
);

DESC practice1; #테이블 구조 확인

  • exam 데이터베이스의 첫 테이블인 practice1의 초기 구조 모습
💡 DDL 중 CREATE 사용

실습과정 4 - DDL, DML 적극 활용

다음은 데이터를 추가하고 조회하고 조작해보는 실습을 해보자.

해당 순서는 이렇다.

  1. 데이터 추가 및 조회

  2. 데이터 수정 및 조회

  3. 칼럼 추가

  4. 새로운 칼럼에 대한 데이터 추가, 조회 및 수정

  5. 테이블 및 데이터베이스 삭제

  6. 데이터 추가 및 조회

# 데이터 하나 추가(title = 제목, content = 내용)
INSERT INTO practice1
SET title = '제목',
`body` = '내용';

  1. 데이터 수정 및 조회
# UPDATE 명령어를 통해 practice1 테이블의 title이 '제목'인 데이터를 '제목1'로 수정
UPDATE practice1
SET title = '제목1'
Where title = '제목';

  1. 칼럼 추가

# 테이블 구조 수정(id 칼럼 추가, first)
ALTER TABLE practice1 ADD COLUMN id INT FIRST;

DESC practice1

  • 아래쪽에 Field값을 보면 id값이 생긴 것을 확인할 수 있음
  1. 새로운 칼럼에 대한 데이터 조회 및 수정
SELECT * FROM practice1;

UPDATE practice1
SET id = 99
WHERE id IS NULL;

SELECT * FROM practice1;

칼럼 추가 후 데이터 조회

칼럼 추가 후 데이터 조회 후 데이터 수정 (id “null” → 99)

  1. 테이블 및 데이터베이스 삭제
DROP TABLE practice1;

DESC practice1;

  • 쿼리문이 두 번 실행돼서 각각 성공과 실패를 겪음. 테이블을 삭제함은 성공
  • 테이블을 삭제함으로써 조회 불가에 따른 실패

  • 현재 데이터베이스 삭제 전 로컬에 있는 데이터베이스들 삭제 후 사라질 예정.

profile
차곡차곡

0개의 댓글