데이터베이스 기본

is Yoon·2023년 9월 13일

SQL

목록 보기
2/4

DB와 DBMS

데이터베이스 (DB, Database) : 데이터의 집합, 데이터를 저장하는 공간
DBMS (Database Management System) : 데이터베이스 관리 소프트웨어
SQL : 구조화된 질의 언어
스키마 : MySQL 안의 데이터베이스



DBMS 종류

DBMS제작사
MySQLOracle
SQL ServerMicrosoft
MariaDBMariaDB
PostgreSQLPostgreSQL
OracleOracle
SQLiteSQLite



DBMS 분류

  1. 계층형 (Hierarchical DBMS) : 트리 형태
  2. 망형 (Network DBMS)
  3. 관계형 (Relational DBMS, RDBMS) : 테이블(행, 열) 구성
  4. 객체지향형 (Object-Oriented DBMS)
  5. 객체관계형 (Object-Relational DBMS)



표준 SQL

Oracle PL/SQLSQL Server T-SQLMySQL SQL



MySQL

오라클 사에서 제공하는 데이터베이스 관리 소프트웨어
대용량의 데이터를 관리하고 운영하는 기능을 제공

  • MySQL 서버 : 데이터베이스 엔진을 운영하는 가장 중요한 프로그램
  • MySQL 워크벤치 : MySQL 서버에 접속하기 위한 프로그램 (이곳에서 SQL문 입력 및 실행)
  • root : MySQL 관리자 이름



데이터베이스 모델링

  • 현실에 쓰이는 것을 테이블로 변경하기 위한 작업 (테이블의 구조를 결정하는 과정)
  • 폭포수 모델 Waterfall model : 소프트웨어 개발 단계 중 하나로, 폭포가 떨어지듯 개발 단계가 진행되는 것
    • 프로젝트 계획 -> 업무 분석 -> 시스템 설계 -> 프로젝트 구현 -> 테스트 -> 유지보수
  • 테이블 구조 : 데이터베이스 개체
  • 프로젝트 : 대규모 소프트웨어를 작성하기 위한 전체 과정

데이터베이스 구축 절차
데이터베이스 생성 >> 테이블 생성 >> 데이터 입력/수정/삭제 >> 데이터 조회 및 활용



데이터베이스 개체

인덱스

데이터를 조회할 때 결과가 나오는 속도를 획기적으로 빠르게 해준다.

가상의 테이블. 테이블의 일부를 제한적으로 표현할 때 주로 사용한다.
실제 데이터를 가지고 있지 않으며, 진짜 테이블에 링크된 개념이다.

스토어드 프로시저

SQL에서 프로그래밍이 가능하도록 해준다.

DELIMITER //                  # 구분 문자 (스토어드 프로시저 묶어주는 약속)
CREATE PROCEDURE myProc()     # 스토어드 프로시저 이름 지정
BEGIN
	# 이곳에 SQL문을 입력하면 된다.
END //
DELIMITER;
CALL myProc()   # 호출

트리거

잘못된 데이터가 들어가는 것을 미연에 방지하는 기능을 한다.

함수, 커서 등

profile
planning design development with data

0개의 댓글