minlog
article thumbnail

 

데이터 베이스란?

Data(자료) + Base(저장장소)

  • 정보성으로 가치가 있는 데이터들만 저장되어 있는 공간.
  • 여러 응용 시스템(프로그램)들의 통합된 정보들을 저장하여 운영할 수 있는 공용(share) 데이터의 집합
  • 효율적으로 저장, 검색, 갱신할 수 있도록 데이터 집합들끼리 연관시키고 조직화되어야 한다.

 

 

💡 데이터베이스의 특성

  • 실시간 접근성(Real-time Accessability) 사용자의 요구를 즉시 처리할 수 있다.
  • 계속적인 변화(Continuous Evolution) 정확한 값을 유지하려고 삽입·삭제·수정 작업 등을 이용해 데이터를 지속적으로 갱신할 수 있
  • 동시 공유성(Concurrent Sharing) 사용자마다 서로 다른 목적으로 사용하므로 동시에 여러 사람이 동일한 데이터에 접근 이용할 수 있다.
  • 내용 참조(Content Reference) 저장한 데이터 레코드의 위치나 주소가 아닌 사용자가 요구하는 데이터의 내용, 즉 데이터 값에 따라 참조할 수 있어야 한다.

 

💡  데이터베이스 관리시스템

(Database Management System = DBMS )

  • 데이터베이스를 관리하는 소프트웨어
  • 여러 응용 소프트웨어(프로그램) 또는 시스템이 동시에 데이터베이스에 접근하여 사용할 수 있게 한다
  • 필수 3기능 정의 기능 : 데이터 베이스의 논리적, 물리적 구조를 정의 조작 기능 : 데이터를 검색, 삭제, 갱신, 삽입하는 기능 —> 주로 작업 하게 될 기능 제어 기능 : 데이터베이스의 내용 정확성과 안전성을 유지하도록 제어하는 기능 EX) 통계 및 분석
  • Oracle, SQL Server, MySQL, DB2 등의 상용 또는 공개 DBMS가 있다.

 

💡 데이터베이스 관리시스템 장점

  • 데이터 중복이 최소화
  • 테이터의 일관성 및 무결성 유지
  • 데이터 보안 보장

 

💡 데이터베이스 관리시스템 단점

  • 운영비가 비싸다
  • 백업 및 복구에 대한 관리가 복잡
  • 부분적 데이터베이스 손실이 전체 시스템을 정리

 

💡 관계형 데이터베이스 ( Relational Database = RDB )

  • 키와 값들의 간단한 관계를 테이블화 시킨 매우 간단한 원칙의 개념의 데이터베이스
  • 일련의 정형화된 테이블로 구성된 데이터 항목들의 집합이며 각 테이블은 데이터의 성격에 따라 여러 개의 **컬럼(키)**이 포함된다. (컬럼 구분값)
  • 사용자는 SQL이라는 표준 질의어를 통해 데이터를 조작 또는 조회 할 수 있다. (Structured Query Language)

 

 

SQL(Structured Query Language)

데이터베이스 스키마 생성, 자료의 검색, 수정, 그리고 데이터베이스 객체 접근 관리 등을 위해 생긴 언어로 다수의 데이터베이스 관련 프로그램의 표준언어이다.

 

💡 SQL 명령어의 종류

  • DML ( Data Manipulation Language ) : 데이터 조작어로 검색 및 수정하기 위한 수단제공 SELECT, INSERT, UPDATE, DELETE, MERGE
  • DDL ( Data Definition Language ) : 데이터 구조를 생성, 변경, 삭제 등의 기능을 제공 CREATE, ALTER, DROP, RENAME
  • DCL ( Data Control Language ) : 데이터에 대한 권한 관리 및 트랜잭션 제어 GRANT, REVOKE

 

 

 

테이블 이해하기 

  • 테이블 : RDBMS의 기본적 저장구조 한 개 이상의 column 과 0개 이상의 row로 구성, 데이터를 담을 수 있는 전체 구조라고 할 수 있음.
  • 열(Column) : 테이블 상에서의 단일 종류의 데이터를 나타냄 특정 데이터 타입 및 크기를 가지고 있음
  • 행(Row) : Column들의 값의 조합. 레코드라고 불린다. 기본키(PK)에 의해 구분된다. 기본키는 중복을 허용하지 않으며 없어서는 안 된다. → EX) 한사람의 정보
  • Field : Row 와 Column의 교차점으로 Field는 데이터를 포함할 수 있고 없을 때는 NULL 값을 가지고 있다고 한

* PK 중요 → 중복데이터가 들어갈 수 없는 컬럼을 말함 EX) 이름이 달라도 데이터 구분 가능

칼럼  속성 필드
로우 튜플 레코드

 

 

 

키의 종류 

종류별로 데이터를 구별하거나 테이블 간의 연관 관계를 표현할 때 키로 지정한 열을 사용합니다. 

키는 기본키 , 후보키, 보조키(대체키) , 왜래키, 복합키 등으로 구분됩니다.

 

💡 Primary Key (PK) : 기본키

기본키는 여러키 중에서 가장 중요한 키입니다.

대부분의 경우 개인 정보 노출이 가장 적은 데이터를 선정합니다.

  • 튜플을 구분하기 위해서 사용하는 것으로 유일한 값이어야 한다.
  • 중복값이 없다.
  • Null 값이 들어올 수 없다.
  • 릴레이션에서 튜플을 구분하기 위하여 사용하는 기본 키
  • 하나의 애트리뷰트, 또는 애트리뷰트의 집합(복합키) 가능
  • 관리자에 의해 릴레이션 생성시 정의됨 (자동으로 Index생성됨)

 

💡 Candidate Key  :  후보키

기본키로 지정될 수 있는 모든 키를 후보키라고 합니다.

 

💡 Alternate Key  : 보조키 / 대체키

보조키는 대체키라고도 불리우며 후보키 중 기본키로 지정되지 않은 열 입니다. 

 

💡  Foreign Key(FK): 외래키

왜래키는 특정 테이블에 포함이 되어 있으면서 다른 테이블의 기본키로 지정된 키입니다.

  • 기본키를 참조하는 속성
  • 다른 테이블과의 연결고리
  • Null 가능 (참조되지 않음 의미)

 

💡  Commposite Key : 복합키

복합키는 여러 열을 조합하여 기본키 역할을 할 수 있게 만튼 키를 의미 합니다.

profile

minlog

@jimin-log

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!