🔁 1. Trigger (트리거)Trigger(트리거) 는 INSERT, UPDATE, DELETE 같은 DML 작업이 발생했을 때, 자동으로 실행되는 저장된 프로시저입니다.데이터 무결성 유지, 변경 이력 기록, 자동 로직 처리 등에 활용됩니다.📌 1-1. 트리거 개요✅ 정의특정 이벤트에 자동으로 반응하는 DB 수준의 자동 실행 SQL 블록BEFORE / AFTER, INSERT / UPDATE / DELETE 조합 가능✅ 특징특정 테이블 대상자동 실행, 수동 호출 불가행 단위 (FOR EACH ROW)로 주로 사용✅ 활용데이터 무결성 검증변경 이력(Log) 관리연관 테이블 동기화복잡한 규칙 자동화⚠️ 제한사항한 테이블에 동일 이벤트-타이밍 조합은 하나만 생성 가능트리거 내 COMMIT / ROLLB..
⚙️ 1. Stored Procedure (저장 프로시저)Stored Procedure는 미리 컴파일된 SQL 블록을 데이터베이스에 저장해두고, 필요할 때 호출하여 실행할 수 있도록 만든 객체이다.재사용성, 보안성, 성능 최적화, 네트워크 트래픽 절감 등 다양한 이점을 제공한다.📌 1-1. 개념 및 특징✅ 정의미리 정의한 SQL 문을 저장하고 실행할 수 있는 프로시저 블록복잡한 로직을 하나의 명령어(CALL) 로 실행✅ 장점반복되는 SQL 로직 재사용미리 컴파일되어 속도 향상보안성 강화 (캡슐화)네트워크 트래픽 감소⚠️ 단점디버깅 어려움특정 DBMS에 종속적과도한 로직 포함 시 유지보수 어려움🆚 1-2. Procedure vs Function항목Stored ProcedureFunction반환 값여러 ..
👁️ 1. VIEW (뷰)VIEW는 SELECT 쿼리문을 저장한 가상 테이블로, 데이터를 직접 저장하지 않고 원본 테이블을 읽는 데 사용된다.보안, 가독성 향상, 데이터 접근 제한 등의 목적으로 활용된다.📌 1-1. VIEW 생성CREATE VIEW hansik ASSELECT menu_code, menu_name, menu_price, category_code, orderable_statusFROM tbl_menu WHERE category_code = 4;✅ 베이스 테이블이 변경되면 VIEW 결과도 실시간 반영INSERT INTO tbl_menu VALUES (null, '식혜맛국밥', 5500, 4, 'Y');SELECT * FROM hansik;⚙️ 1-2. VIEW를 통..
⚡ 1. INDEX (인덱스)인덱스는 데이터 검색 속도를 향상시키기 위한 자료구조로, 테이블의 특정 컬럼에 포인터를 생성해 빠른 조회가 가능하도록 돕는다.📌 1-1. 인덱스 생성CREATE TABLE phone ( phone_code INT PRIMARY KEY, phone_name VARCHAR(100), phone_price DECIMAL(10, 2));✅ 단일 인덱스 생성 CREATE INDEX idx_name ON phone (phone_name);✅ 복합 인덱스 생성 CREATE INDEX idx_name_price ON phone (phone_name, phone_price);📋 인덱스 목록 조회 SHOW INDEX FROM phone;⚙️ 1-2. 인덱스 활용인덱스를..
🛡️ 1. CONSTRAINTS (제약조건)제약조건(CONSTRAINT)은 테이블에 데이터가 삽입·수정될 때 적용되는 규칙을 말하며, 데이터 무결성 보장에 필수적입니다.📌 1-1. NOT NULL해당 컬럼에는 NULL 값 입력 불가필수 입력값 설정 시 사용user_id VARCHAR(255) NOT NULL❗ NULL 입력 시 에러 발생📌 1-2. UNIQUE중복 불가 조건하나의 컬럼 또는 여러 컬럼 조합에 설정 가능phone VARCHAR(255) NOT NULL UNIQUE❗ 중복 데이터 입력 시 에러 발생📌 1-3. PRIMARY KEY행을 식별하는 고유값NOT NULL + UNIQUE 조건의 결합한 테이블에 하나만 설정 가능 (단일 컬럼 또는 복합키 가능)PRIMARY KEY (user_n..
🧱 1. DDL (Data Definition Language)DDL은 데이터베이스의 구조(스키마)를 정의하거나 수정하는 명령어 모음입니다.📌 1-1. CREATE - 테이블 생성CREATE TABLE IF NOT EXISTS tb1 ( pk INT PRIMARY KEY, fk INT, col1 VARCHAR(255), CHECK(col1 IN ('Y', 'N'))) ENGINE=INNODB;IF NOT EXISTS로 중복 생성 방지컬럼 정의 문법column_name data_type(length) [NOT NULL] [DEFAULT value] [AUTO_INCREMENT]🔍 테이블 확인DESCRIBE tb1;✅ 데이터 삽입INSERT INTO tb1 VALUES (1, 10..
📘 Database 개요1. Data와 정보1.1 Data란💡 관찰의 결과로 나타난 정량적 혹은 정성적인 실제 값을 의미합니다.예시: 에베레스트의 높이 — 8848m1.2 Information이란💡 데이터를 기반으로 하여 의미를 부여한 것입니다.예시: 에베레스트는 세계에서 가장 높은 산이다.2. Database2.1 Database란💡 한 조직에 필요한 정보를 여러 응용 시스템에서 공유할 수 있도록 논리적으로 연관된 데이터를 모으고, 중복을 최소화하여 구조적으로 통합/저장해 놓은 것입니다.구조화된 데이터의 집합으로, 컴퓨터에서 쉽게 접근, 관리, 업데이트할 수 있습니다.2.2 Database의 정의운영 데이터: 조직의 목적을 위해 사용되는 데이터공용 데이터: 공동으로 사용되는 데이터통합 데이터: ..
- Total
- Today
- Yesterday
- 회고록
- 자료형
- view
- 파이썬
- 모듈
- 플레이데이터
- Constraints
- sk네트웍스 family ai 캠프 11기
- 튜플
- SQL
- 분기문
- tuple
- 반복문
- DDL
- procedure
- sk ai camp
- 시퀸스자료형
- dictionary
- 모델링
- Databse
- set
- DBMS
- 조건문
- database
- Python
- KPT
- 클래스
- Stored Procedure
- PMI
- 패키지
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |