database(SQL 실무)

김현희·2026년 4월 21일

SQL 기본 작업 (CRUD)

Create -> INSERT
Read -> SELECT
Update -> UPDATE
Delete -> DELETE

SQL은 만드는 순서:

1️⃣ 데이터베이스 만들기
2️⃣ 사용할 데이터베이스 선택
3️⃣ 테이블 만들기


1. 데이터베이스 생성 & 삭제

생성 및 사용 (어떤 db를 사용할지 꼭 명시해줘야 함.)

CREATE DATABASE db_name;
USE db_name;

예) CREATE DATABASE hospital; ➡️ hospital이라는 폴더를 만듦
예) USE hospital; ➡️ 이 폴더 안에서 작업 할 거라는 의미

삭제

DROP DATABASE db_name;

예) DROP DATABASE hospital; ➡️ 폴더 통째로 삭제 (🔥 위험)

데이터베이스 서버

  • 데이터베이스 안에 여러 table이 있고, table안에 data들이 저장됨.
    💡 데이터베이스(DB) = 큰 폴더
    💡 테이블(Table) = 엑셀 파일

2-1. 테이블 생성

CREATE TABLE table_name (
column1 datatype constraints,
column2 datatype constraints,...);

예) CREATE TABLE patients (
patient_id INT,
name VARCHAR(50),
age INT);

➡️ “환자2️⃣ 엑셀 파일 만들고, 열 구조 정의”

테이블 만들 때 사용하는 용어들 재정리

1️⃣ 데이터 타입 (칸의 종류) : 이 칸에 어떤 형태나 값을 넣을건지 결정

계열용어설명
숫자INT정수1, 2, 100
문자VARCHAR(50)글자 (최대 50자)이름, 주소
날짜DATE2024-01-01
선택형ENUM('M','F')정해진 값만 입력

2️⃣ 데이터 타입 (칸의 형태)

용어설명
PRIMARY KEY⭐️행을 구별하는 유일한 값, 중복x, NULLx
NOT NULL무조건 값을 입력해야 함
UNIQUE중복금지
DEFAULT값 안 넣으면 자동적으로 뒤에 적은 값이 입력됨
AUTO_INCREMENT숫자 자동 증가

예시)
CREATE TABLE patients (
patient_id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
gender ENUM('M', 'F'),
birth_date DATE
city VARCHAR(50) DEFAULT 'Unknown'
);

2-2. 테이블 관계 설정

CONSTRAINT fk_테이블명_컬럼명
FOREIGN KEY (FK이름) REFERENCES PK가 포함된 테이블(PK이름)

2-3. 테이블 삭제

DROP TABLE table_name;
예) DROP TABLE patients; ➡️ patients 테이블 삭제


3. DESCRIBE: 스키마 요약본 읽기

DESCRIBE table_name;

예) DESC patients; ➡️ 이 엑셀 파일 구조가 뭔지 확인

4. SHOW

테이블 목록 확인

SHOW TABLES;
SHOW TABLES; ➡️ 파일 뭐 뭐 있지? 확인

테이블 생성 SQL 전체 확인

SHOW CREATE TABLE table_name;



5. ALTER TABLE

ALTER TABLE table_name ➡️ Column 추가(열 하나 추가)
ADD COLUMN new_column_name datatype;
.
ALTER TABLE table_name ➡️ Column 삭제
DROP COLUMN column_name;
.
ALTER TABLE table_name ➡️ Column 수정 (타입 바꾸기)
MODIFY column_name datatype;


6. INSERT

  • 한 줄 추가

INSERT INTO table_name (col1, col2, col3)
VALUES (‘값1’, ‘값2’, ‘값3’);

예)
INSERT INTO patients (patient_id, name, age)
VALUES (1, '김철수', 30);


7. UPDATE

  • 특정 데이터 수정
  • ⭐️ where을 쓰지 않으면 전체 데이터가 변경되기 때문에 주의해야 함!⭐️

UPDATE table_name
SET column1 = value1, column2 = value2
WHERE 조건;

예)
UPDATE patients
SET age = 31
WHERE patient_id = 1;


8. DELETE

  • 특정 줄 삭제
  • 실무에서는 DELETE대신 soft delete 사용
  • 특히 병원 시스템에서는 DELETE 거의 금지

DELETE FROM table_name
WHERE 조건;

예)
DELETE FROM patients
WHERE patient_id = 1;

profile
AI 헬스케어 공부하는 간호사

0개의 댓글