SQL. 첫걸음

Woo Hwukjun·2021년 2월 24일
0
post-thumbnail

1강 데이터 베이스

데이터는 컴퓨터안에 기록되어있는 숫자
—> 이 데이터를 집합한곳이 Database이다.

데이터베이스 관리 시스템(DBMS)

  1. 생산성 : 검색, 추가, 삭제, 갱신 같은 기능 탑제
  2. 기능성 : 복수유저 요청, 대용량 데이터, 고속검색 기능
  3. 신뢰성 : 동시에 성능 향상 --> Scalability(확장성) & Load balancing(부하 분산) == 클러스터 구성, 스케일 아웃
    --> 다른 저장 장치로 Export 반대로 Import할수있다. (부분백업도 가능하다)

DB를 조작하는 언어 : SQL

Relational Database Management System 관계형이다.(SQL를 사용가능한건 관계형밖에없다)0

SQL 명령의 종류

  1. DML: M:Manipulation(조작) 새로 추가, 삭제, 갱신 등 조작할때
  2. DDL: D:Definition(정의) 데이터를 관리하는 DB객체를 만들거나 삭제하는 명령어
  3. DCL: C:Control(제어) Transaction을 제어하는 명령과 데이터 접근권한을 제어

2강 다양한 데이터베이스

데이터베이스 종류

  1. 계층형: 데이터저장을 폴더와 파일 등의 계층구조 (요즘 채택잘안됨)
  2. 관계형: 관계 대수(relational algebra) 것에 착안하여 고안한 데이터베이스다.(표형식 데이터)
  3. 객체지향: 자바나 C++를 객체지향언어라고 합니다. 객체를 중심으로하는 언어.
  4. XML: 태그를 이용해 마크업 문서를 작성(SQL명령을 사용할수 X, 검색할때 XQuery라는 전문명령어 사용
  5. 키-밸류 스토어: 키와 대응하는 값을 저장(조합은 연상배열 이나 해시테이블)
  • NoSQL(not only SQL) - 열 지향 데이터베이스
  • 연상배열 (Associative array): 자료구조하나로 키하나와 값하나가 연관되어 있으며 키를 통해 연관되는 값을 얻을수있습니다.(딕셔너리,맵)이렇게많이 부릅니다.

RDBMS 사용 시스템

메인프레임은 대부분 RDBMS를 사용한다고 해도 과언이 아니다.
하지만 요즘들어 다운사이징으로 인해 소형 워크스테이션으로 대체된것입니다.
인프라는 당연히 인터넷

데이터베이스 제품

  1. Oracle: 표준이라고해도 문제없을 정도로 유명합니다. 유닉스 워크스테이션 중심
  2. DB2: IBM이 개발했고 IBM컴퓨터에서만 구동되었다. 이후 플랫폼을 옮겼지만 확대할수없었다.
  3. SQL Server: 마이크로소프트가 개발/ 윈도우 플랫폼에서만 동작
  4. PostgreSQL: 오픈소스 커뮤니티 개발/ 버클리 캠퍼스에서 탄생/ 실험적인 기능+독특한 구조 포함
  5. MySQL: 오픈소스/ 처음에는 경량 데이터베이스라는 점 강조(기능 최소화) 하지만 기능 확장
  6. SQLite: 오픈소스/ 휴대전화용/ 임베디드 시스템에 쓰이는 RDBMS.

SQL의 방언과 표준화

RDBMS는 처음부터 SQL 명령어를 이용해 DB를 조작하도록 설계된만큼 SQL를 사용할수없다.
기능 확장이 이루어지는 과정에서 비슷한 조작을 실행하더라도 서로 다른 명령어가 필요한 상황

  • 키워드 생략 - 데이터를 삭제할때 오라클이나 SQL Server는 from을 생략 하지만 다른곳에는 생략할경우 에러발생.
  • 외부 결합 - 하는 방법은 "LEFT JOIN"이다.
profile
미래 개발자

0개의 댓글