“데이터의 집합” 으로, 카카오톡의 메시지, 인스타그램에 등록되어 있는 사진, 대중교통에서 사용하는 교통카드 등의 정보가 저장소에 저장되는 것
공유 데이터 : 특정 조직의 여러 사용자가 함께 사용하고 이용할 수 있는 공유 데이터
통합 데이터 : 최소한의 중복과 통제 가능한 중복만 허용하는 데이터
저장 데이터 : 컴퓨터가 접근할 수 있는 매체에 저v장된 데이터
운영 데이터 : 조직의 주요 기능을 수행하기 위해 지속적으로 꼭 필요한 데이터
실시간 접근 : 사용자의 데이터 요구에 실시간으로 응답
계속 변화 : 데이터의 계속적인 삽입, 삭제, 수정을 통해 현재의 정확한 데이터 유지
동시 공유 : 서로 다른 데이터의 동시 사용 뿐만 아니라 같은 데이터의 동시 사용도 지원
내용 기반 참조 : 데이터가 저장된 주소나 위치가 아닌 내용을 참조
데이터가 저장되어 있는 Database 를 관리 및 운영할 수 있도록 여러 명의 사용자가 동시에 접근할 수 있도록 하는 소프트웨어
| DBMS | 제작사 | 지원 운영체제 | 기타 |
|---|---|---|---|
| MySQL | Oracle | Unix, Linux, Windows, Mac | 오픈소스 (무료), 사용 |
| MariaDB | MariaDB | Unix, Linux, Winows | 오픈 소스 (무료), MySQL 초기 개발자들이 독립해서 만든 것 |
| PostgreSQL | PostgreSQL | Unix, Linux, Windows, Mac | 오픈 소스 (무료) |
| Oracle | Oracle | Unix, Linux, Winodws, | 사용 시장 점유율 1위 |
| SQL Server | Microsoft | Windows | 중/대형급 시장에서 주로 사용 |
| DB2 | IBM | Unix, Linux, Winodws | 메인프레임 시장 점유율 1위 |
| Access | Microsoft | Winodws | PC용 |
| SQLite | SQLite | Android, IOS | 모바일 전용, 오픈 소스 (무료) |
DBMS 에는 계층형, 망형, 관계형, 객체지향형, 객체관계형 등으로 분류되며, 현재 주로 사용되는 것은 관계형



# Database 생성
CREATE DATABASE "데이터베이스 이름";
# Database 를 사용하도록 설정
USE "데이터베이스 이름";
# Table 생성
CREATE TABLE '테이블 이름' {
'열의 이름' '데이터 유형' NOT NULL,
'name' VARCHAR(10) NOT NULL,
'학과' VARCHR(10) NOT NULL
);
# Tables 확인
SHOW TABLES;
SELECT * FROM '테이블 이름' WHERE 조건;
# Table 삭제
DROP TABLE '테이블 이름';
# View 삭제
DROP VIEW '뷰 이름';
# Index 삭제
DROP INDEX '인덱스 이름' ON '테이블 이름';
# Database 삭제
DROP DATABASE '데이터베이스 이름';
# 열1 에 값1 을 삽입
INSERT INTO '테이블 이름' (열1, 열2, 열3, ...) VALUES (값1, 값2, 값3, ...);
# student 라는 테이블에 stuednt_id, name, 학과 에 값1, 값2, 값3 삽입
INSERT INTO student (student_id, name, 학과) VALUES (값1, 값2, 값3);
# 삭제하려고 하는 테이블을 확인
SELECT * FROM '테이블 이름' ;
# 데이터 삭제
DELETE FROM '데이터베이스 이름' WHERE '테이블 이름' = '지우고자 하는 값';
UPDATE '데이터베이스 이름' SET name = '변경할 데이터' WHERE '테이블 이름' = '변경할 값';
참고 자료