데이터베이스 기초 개념
1. 데이터베이스란?
데이터베이스는 여러 사용자가 동시에 데이터를 접근하고 공유하며, 데이터를 통합적으로 관리할 수 있는 시스템입니다. 데이터는 현실 세계에서 수집된 사실을 뜻하고, 데이터베이스는 이를 체계적으로 저장하고 관리해 효율적으로 처리할 수 있게 해줍니다.
- 데이터(Data): 현실에서 수집된 단순한 사실이나 값.
- 정보(Information): 데이터를 가공하여 특정 목적에 맞게 해석한 형태.
2. 데이터베이스의 필요성
데이터베이스는 기존 파일 처리 시스템의 여러 한계를 극복하기 위해 등장했습니다. 데이터베이스가 필요한 이유는 아래와 같은 문제점들 때문입니다.
- 데이터 종속성 문제: 데이터 구조가 변경되면 그와 연결된 프로그램들도 수정이 필요함.
- 데이터 중복 문제: 응용 프로그램마다 독립적으로 데이터를 생성하면서 동일한 데이터가 여러 번 저장될 수 있음.
- 데이터 무결성 유지의 어려움: 데이터의 정확성과 일관성을 유지하는 것이 어려움.
3. 데이터베이스의 특징
데이터베이스는 아래와 같은 몇 가지 중요한 특징을 가지고 있습니다.
- 실시간 접근성: 데이터는 필요할 때 언제든지 접근 가능해야 합니다.
- 동시 공유: 여러 사용자가 동시에 데이터를 사용할 수 있어야 합니다.
- 지속적인 변화: 데이터는 추가, 수정, 삭제를 통해 항상 최신 상태를 유지해야 합니다.
데이터베이스 종류
- 관계형 데이터베이스(RDB):
- 데이터를 테이블 형태(행과 열)로 저장하며, SQL을 통해 데이터를 관리합니다.
- 미리 정의된 스키마(구조)에 맞춰 데이터를 저장하며, 데이터의 안정성과 무결성을 보장합니다.
- 대표적인 관계형 데이터베이스 관리 시스템으로는 MySQL, PostgreSQL, MariaDB 등이 있습니다.
- NoSQL 데이터베이스:
- 데이터 간의 관계를 엄격하게 정의하지 않으며, 보다 유연하게 데이터를 저장할 수 있습니다.
- 구조가 고정적이지 않고 다양한 형식의 데이터를 저장할 수 있으며, 대규모 데이터 처리에 적합합니다.
- 대표적인 NoSQL 데이터베이스로는 MongoDB, Redis, Apache Cassandra 등이 있습니다.
관계형 데이터베이스 만들기
관계형 데이터베이스에서 가장 기본적인 요소는 테이블입니다. 테이블은 데이터를 행(Row)과 열(Column)로 나누어 저장하며, 열을 속성(attribute), 행을 튜플(tuple)이라고 부릅니다. 또한, 속성이 가질 수 있는 값들의 범위를 도메인(domain)이라고 합니다.
예시 코드: 테이블 생성
CREATE TABLE customers (
id VARCHAR(50) NOT NULL,
name VARCHAR(100) NOT NULL,
address VARCHAR(200),
PRIMARY KEY (id)
);
위 코드는 고객 데이터를 관리하기 위한 테이블을 생성하는 SQL 예시입니다. id
는 고유한 값이며, 기본 키로 설정되어 중복이 허용되지 않습니다. 이 테이블에는 name
과 address
속성도 포함되어 있습니다.
예시 코드: 데이터 삽입
INSERT INTO customers (id, name, address)
VALUES ('temporubato109', 'Lee Wonho', 'Kimhae-si Nae-dong');
예시 코드: 데이터 조회
SELECT name, address FROM customers WHERE id = 'temporubato109';
SQL 기본 문법
1. SQL 작성 규칙
- SQL 문법은 대문자로 작성하는 것이 권장됩니다.
- 테이블명, 속성명은 소문자로 작성하는 것이 좋습니다.
- 여러 단어로 이름을 작성할 때는 언더스코어(
_
)로 구분합니다. - 주석은
--
로 작성할 수 있습니다. - 명령어의 끝에는 세미콜론(
;
)을 작성합니다.
2. 테이블 정의
테이블을 정의하는 기본 문법은 다음과 같습니다.
CREATE TABLE 테이블명 (
속성1 데이터타입1 제약조건1,
속성2 데이터타입2 제약조건2, ...
);
3. 데이터 삽입
테이블에 데이터를 삽입하는 방법은 다음과 같습니다.
INSERT INTO 테이블명 (속성1, 속성2, ...) VALUES (값1, 값2, ...);
4. 데이터 조회
테이블에서 데이터를 조회하는 기본 문법은 다음과 같습니다.
SELECT 속성1, 속성2, ... FROM 테이블명;
5. 테이블 수정
-- 컬럼 추가:
-- ALTER TABLE 테이블명 ADD COLUMN 컬럼명 데이터타입 제약조건;
ALTER TABLE customer ADD COLUMN birthday DATE NULL;
-- 컬럼 수정:
-- ALTER TABLE 테이블명 MODIFY COLUMN 컬럼명 데이터타입 제약조건;
ALTER TABLE customer MODIFY COLUMN id varchar(15) NULL;
-- 컬럼 이름 변경:
-- ALTER TABLE 테이블명 CHANGE COLUMN 기존컬럼명 새컬럼명 데이터타입 제약조건;
ALTER TABLE customer CHANGE COLUMN name korean_name varchar(10) NOT NULL;
-- 컬럼 삭제:
-- ALTER TABLE 테이블명 DROP COLUMN 컬럼명;
ALTER TABLE customer DROP COLUMN address;
-- 테이블 이름 변경:
-- ALTER TABLE 기존테이블명 RENAME 새로운테이블명;
ALTER TABLE customer RENAME member;
6. 테이블 삭제
DROP TABLE 테이블명;
'SQL > 데이터베이스 기초' 카테고리의 다른 글
데이터 모델링 & ER다이어그램 (1) | 2024.10.13 |
---|---|
제약 조건과 키(Constraints & Keys) (1) | 2024.10.13 |