안녕하세요 미씨오입니다.
DB관련 기초 이론에 대해 공유 드립니다.
MYSQL : DBMS - MySQL, (MS) SQL, Oracle, InfoMix, ... 데이터베이스 관리 시스템, 데이터베이스에서 처리하는 각 객체(objects)의 연관성을 관계(relation)으로 규정한 데이터 관리 시스템을 관계형 데이터베이스라고 부른다.
그리고 이런 데이터들을 처리하기 위한 명령어를 SQL로 부른다. 따라서 SQL을 데이터베이스로 보는 것은 틀린 개념이다. SQL은 C, JAVA와 같은 프로그래밍 언어(인간의 언어와 가장 유사한 구조를 가진언어)이다.
DBMS
1. 데이터 : 자료(resouces, raw date)
2. 테이블 : 데이터를 표형식으로 표현한 것
3. DB(DataBase) : 테이블의 집합을 일컫는다.
4. DBMS(DataBase Management System) : DB를 관리하는 소프트웨어이다.
5. 레코드(튜플) : 테이블에서의 행(line:horizontal)
6. 필드(컬럼) : 테이블에서의 열(column:vertical) : 여러개의 필드가 모여서 레코드를 이룬다.
7. 데이터 타입 : 각 필드에 입력한 값의 형식(정수, 소수, 문자)
8. Primary key : 각 레코드를 구별하기 위한 유일하고(unique) 비어있지 않은(not null) 필드
9. Foreign key : 다른 테이블에서의 PK에 대응하는(corresponding: 참조한다.)
- 필드로써 삭제. 변경,..등에서 주의한다. 각 테이블에 여러 개가 있을 수 있다. -> join 등에서 주의
RDBMS : DBMS 중에서 관계형 데이터베이스를 특별히 부를 때 사용하는 용어로써 현재 우리가 사용하는 대부분의 데이터베이스는 관계형DB이다. 하나의 컬럼에는 지정된 데이터만 저장할 수 있는다.
(데이터를 저장할 수 있는 포맷이 정해져 있음:schema(데이터를 저장할 수 있는 테이블)
SQL(Structured Query Language) : DB에서 정보를 얻거나 조정하거나 기타 작업을 수행하게 해주는 언어 (쉘과 같은 기능), 대소문자 구별이 없다(지시어/예약어는 보통 대문자 사용) 문장이 끝나면 반드시 ; 를 써준다. C로 쓰여진 언어이므로 주석, 기타 프로그래밍은 C 규칙에 따른다, // # 로 주석처리한다.
Data Type : MySQL에서 사용하는 데이터타입
VARCHAR(n) : 최대 n개의 크기인 가변길이 문자열
CHAR(n) : n개의 문자까지 저장되는 고정길이 문자열
INT : 정수형 숫자
FLOAT : 실수(소수 포함) 숫자 <-- blob
DATE : 날짜를 저장 <-- 데이터타입으로 지정한다면 nDATE 식으로 표시함
TIME : 시간을 저장
EX) varchar(100)한 뒤 10만 저장하면 90에 다른 데이터를 넣을 수 있다. -> 이름, 주소,...
char(100)gks enl 10aks wjwkdgkaus 90을 다른 데이터가 사용할 수 없다. -> 주민번호, 전화번호,
-> varchar(100) 해두면 미리 CPU가 100만큼의 공간을 확보한 뒤 해당 크기만큼 데이터가
들어오지 않으면 남은 공간을 다른 데이터가 사용하게 해주지만 프로세스 처리 시간이 늦어진다.
char(100)이 varchar(100)보다 처리 속도가 빨라진다.
ODBC : 외부 응용 프로그램이 해당 프로그램에서 사용하는 DB프로그램(MySQL, Oracle, MS SQL)과 연결할 때 사용되는 모듈을 말하는데, 예를 들어서 Windows머신에서 Visual Studio 프로그램으로 Web에서 작동하는 어느 주소록 방명록, 음식점 소개 사이트를 만들어서 해당 데이터가 저장된 DB와 연결할 때 필요한 작은 프로그램을 말한다. --> MySQL DB, PHP Web-programming , Apache Web server
'지식 공유 > DB관련' 카테고리의 다른 글
MYSQL 패스워드 변경 방법 (0) | 2019.09.04 |
---|---|
리눅스 CENTOS 7 - MYSQL 설치 방법 (0) | 2019.09.03 |