데이터는 현실 세계에서 수집된 단순한 사실과 값들을 모아 놓은 것
정보는 데이터를 특정 목적에 의해 해석하거나 가공한 형태
: 데이터들의 집합
한 조직 안에서 여러 사용자와 응용 프로그램이 공동으로 사용하는 데이터들을 통합하여 저장하고 운영하는 데이터
파일처리 시스템의 한계
• 데이터의 구조가 바뀌면 응용 프로그램의 구조도 바뀌어야 함 (데이터 종속의 문제)
• 응용 프로그램 별로 데이터를 생성할 수 있기 때문에 데이터가 중복될 수 있음 (데이터 중복의 문제)
• 데이터의 무결성을 지킬 수 없음
RDB(Relational Database)는 관계형 모델을 기반으로 SQL을 이용해 데이터를 관리함
NoSQL(Not only SQL)은 데이터 간의 관계를 정의하지 않고 RDB보다 유연한 모델을 이용
• 데이터를 행과 열을 가지는 테이블로 표현
• 테이블 간의 관계를 이용해 데이터를 효과적으로 관리하여 데이터의 무결성을 보장
• 정의된 테이블(스키마)에 맞게 데이터가 삽입되므로 데이터의 안정성을 보장
• 데이터의 구조가 일관적인 경우에 주로 사용
• 데이터를 저장할 수 있는 유형의 제한이 없음
• 새로운 유형의 데이터를 추가하기 용이
• 데이터의 구조가 일관적이지 않고 자주 변경되는 경우에 적합 •대용량의 데이터를 더 빠르게 처리할 수 있음
• 테이블은 행과 열로 구성
• 속성은 데이터의 특성을 나타내는 가장 작은 논리적 단위를 의미
• 튜플은 속성이 모여 구성된 각각의 행을 의미
• 속성이 가질 수 있는 값의 집합을 도메인이라고 함
• 관계가 있다면 하나의 속성으로 테이블을 연결해서 데이터를 효과적으로 관리
: 관계형 데이터베이스를 활용하기 위해 사용하는 표준 언어
자료형 | 의미 |
---|---|
VARCHAR(n) | nBytes 크기의 가변 길이 문자열 데이터 |
INT | 정수형 숫자 데이터(4Bytes) |
FLOAT | 4Bytes 크기의 부동 소수점 데이터 |
DATETIME | 날짜와 시간 형태의 기간 데이터 (YYYY-MM-DD HH:MM:SS) |
CREATE TABLE 테이블명(속성1 데이터타입1, 속성2 데이터타입2, ...);
데이터베이스의 테이블 목록을 확인
SHOW TABLES;
테이블의 구조를 확인
DESC customer;
속성값을 넣지 않는 경우 default 값인 NULL이 삽입됨
INSERT INTO 테이블명(속성1, 속성2, ...)
VALUES(속성값1, 속성값2, ...);
SELECT 속성1, 속성2 FROM 테이블명;
컬럼 추가: ALTER TABLE 테이블명 ADD COLUMN 컬럼명 데이터타입 제약조건
컬럼 수정: ALTER TABLE 테이블명 MODIFY COLUMN 컬럼명 데이터타입 제약조건
컬럼 이름 변경: ALTER TABLE 테이블명 CHANGE COLUMN 기존컬럼명 새로운컬럼명 데이터타입 제약조건
컬럼 삭제: ALTER TABLE 테이블명 DROP COLUMN 컬럼명
테이블 이름 변경: ALTER TABLE 기존테이블명 RENAME 새로운테이블명
DROP TABLE 테이블명;