-
1.31 SQL 입문과정, 다운로드, 데이터 정의, DBMS, RDMS, RDBMS, NoSQL, DML, DLCSQL 과정 2019. 1. 31. 11:30
오라클(Oacle) = https://codedragon.tistory.com/4023
- 미국 오라클사의 관계형 데이터베이스 관리 시스템이다.
- 관계형 데이터 베이스 관리 시스템이란 Relational DataBase Management System으로써 줄여서 RDBMS라고 한다.
- 오라클은 사용되는 관계형 데이터베이스 관리 시스템으로 현재 가장 널리 사용되는 대표적인 제품 중 하나이다.
- 사이트
- https://www.oracle.com/index.html
- https://www.oracle.com/database/
- 다운로드는 반드시 로그인 후 해야 가능하다.
데이터 정의 = https://codedragon.tistory.com/8439
이론을 세우는 데 기초가 되는 사실, 또는 바탕이 되는 자료
컴퓨터가 처리할 수 있는 문자, 숫자, 소리, 그림 따위의 형태로된 자료
수, 영상, 단어등의 형태로 된 의미 단위
데이터를 단순한 객체로서 가치뿐만 아니라 다른 객체와의 상호관계 속에서 가치를 갖는것으로 설명 됨
데이터는 지식경영의 학샘이슈인 암묵지와 형식지의 상호작용에 있어 중요한 역할을 하는 지식 형성의 중요한 기초가 된다.
주로 테이블/레코드 형태로 관리된다.
데이터는 소유관계가 있어 자유롭게 유통이 되지 못한다.
파일 시스템(파일 처리 시스템) = https://codedragon.tistory.com/4407
파일시스템은 각각의 응용프로그램이 자신의 데이터를 파일형태로 별도 관리하는, 파일 중심의 데이터 처리 시스템
응용 프로그램과 데이터간에 상호 의존성이 존재한다. 즉, 대부분의 경우 응용프로그램과 데이터 파일이 1:1로 대응되는 특징을 가지고 있다.
- 파일 시스템의 문제점
- 파일 시스템의 데이터 중복으로 인한 문제점
데이터 베이스 관리 시스템(DBMS) = https://codedragon.tistory.com/4100
- DB의 구축 및 관리를 위한 전용 소프트웨어(도구)
- 데이터 베이스를 효율적으로 관리할수 있는 시스템
- 데이터를 효율적으로 관리하기 위해서 데이터 베이스에 추가, 삭제, 변경, 검색을 할수 있는 기능을 제공한다.
- 방대한 양의 데이터를 편리하게 저장하고 효율적으로 관리하고 검색할수 있는 환경을 제공해주는 시스템 소프트 웨어
- 응용프로그램과 데이터베이스의 중ㅇ재자역할로 모든 응용프로그램들이 데이터베이스를 이용 가능하도록 관리 해주는 시스템 소프트 웨어
- 도식도
- DB의 정의와 조작, 제어 기능을 제공
- 여러 사용자와 응용프로그램이 DB를 공유할수 있도록 관리
- 사용자와 응용프로그램에 편리하고 효율적인 데이터 베이스 사용환경을 제공
- 특징
- 응용프로그램이 데이터에 종속되지 않는 데이터 독립성을 제공하는 것
- DB의 구조를 변경해도 응용프로그램에 영향을 주지 않고, 반대로 응용 프로그램을 변경해도
- DB에 영향을 주지 않도록 하는것, 즉 응용프로그램이 데이터에 종속되지 않는 데이터 독립성을 제공하는 것
- 등장 배경
- 정보처리 시스템의 활용 분야가 점차 다양해지면서 데이터 검색을 위주로 하는 데이터 베이스 시스템에 대한 요구 증가
- 데이터 처리 위주의 파일 처리 시스템으로는 구현의 한계점
- 저렴한 고속 자기디스크의 대중화로, 대량 정보 저장 및 빠른 검색이 가능
- 데이터 통신 기술의 발전으로 빠른 정보 전송이 가능하여, 데이터의 동시 공유가 가능
DBMS의 필수 기능 = https://codedragon.tistory.com/5245
- 데이터 정의 기능
- 데이터베이스의 테이블들을 생성하고 각 테이블의 속성들의 특성들을 정의하여 데이터베이스의 콘텐츠 구조를 규정하는 기능을 제공
- 다양한 응용프로그램과 DB가 서로 인터페이스 할수 있는 수단이다.
- 하나의 저장된 DB를 기초로 여러 사용자와 응용프로그램의 다양한 데이터 요구를 지원 하도록 DB구조를 정의하는 기능을 제공
- 데이터 조작 기능
- 사용자와 DB간의 인터페이스를 위한 수단을 제공
- DB에 저장된 데이터의 검색, 삽입, 삭제, 갱신 등과 같은 DB연산을 처리하는 기능을 제공
- 데이터 제어 기능
- 공용으로 관리되는 DB의 내용을 정확하고 안전하게 유지 할수 있도록록 , 3가지 제어 기능을 제공
- 데이터의 삽입, 삭제 등 DB 변경 시에 데이터의 무결성 및 일관성 유지
- 권한이 부여된 사용자만이 허용된 데이터에 접근 가능하도록 접근 권한 검사 기능
- 여러 사용자가 DB에 동시 접근 가능하도록 동시성 제어
- 리포트 생성 기능
- 데이터베이스 관리 스템들은 세련된 리포트를 생성하는 기능 가지고 있다.
- 관심 있는 데이터를 쿼리해서 보는 것보다 더욱 구조적이고 세련된 형태로 보여주는 리포트를 생성
RDMS = https://codedragon.tistory.com/6617
- 관계형 데이터 베이스
- 데이터 베이스중 가장 일반적인 형태
- 테이블 기반의 DBMS이다.
- 일련의 정형화된 테이블로 구성된 데이터 항목들의 집합체로, 테이블, 로우, 칼럼 이라는 간단한 구조로 구성
- 정보를 저장하기 위한 구조를 위해 테이블을 사용하며 테이블은 2차원 형태의 표와 같은 구조를 가지고 있다.
- 모델링은 ER모델을 사용
테이블 = https://codedragon.tistory.com/7667
- 정보를 저장하기 위한 구조를 위해 테이블을 사용하며 테이블은 2차원 형태의 표와 같은 구조를 가진다.
- 테이블은 로우와 칼럼으로 구성되어있다.
- 데이터들을 행과 열로 구성된 2차원의 테이블로 표현하고 각각의 테이블은 하나의 데이터베이스화 되는 대상인 개체들의 속성들과 관련한 데이터들로 구성
RDBMS의 테이블 = https://codedragon.tistory.com/8394
- 데이터들을 행과 열로 구성된 2차원의 테이블로 표현하고 각각의 테이블은 하나의 데이터베이스화되는 대상인 개체들의 속성들과 관련한 데이터들로 구성된다.
- 제시된 테이블은 사번, 부서명, 위치라는 열로 구성된 부서번호 테이블이다.
- 테이블의 각 열은 속성이라고 지칭한다.
RDMS 종류 = https://codedragon.tistory.com/8338
NoSQL = https://codedragon.tistory.com/3863
- 기존 RDBMS 형태의 관계형 데이터베이스가 아닌 다른 형태의 데이저 저장 기술을 의미
- RDBMS 제품군과 같이 공통된 형태의 데이터 저장 방식과 접근방식을 갖는 제품군이 아니라 RDBMS와 다른 형태의 데이터 저장 구조를 총칭하며, 제품에 따라 각기 그 특성이 매우 다르기 때문에 NoSQL을 하나의 제품군으로 정의할수는 없다.
- NoSQL은 기존 방식에서 빅데이터를 효과적으로 저장, 관리하는데 여러가지 문제가 발생하여 개선, 보완하기 위해서 사용된 새로운 데이터 저장기술이다. 비관계형 데이터베이스를 지칭하는 분산환경의 데이터 저장소를 의미한다.
- NoSQL 에서 데이터 저장은 다수의 서버에 분산해서 저장하기 때문에 속도가 빠르다. 트랜잭션이 클러스틀 구성하는 저체서버에 분산되기 때문에 다수의 클라이언트가 동시에 접속해서 사용하더라도 속도가 빠르다.
DBMS vs NoSQL = https://codedragon.tistory.com/8441
- 양쪽의 특징을 넘어서 데이터가 커지는 경우, 일반적으로 수십 테라가 넘어서는 경우 빅데이터 처리 기술이 필요하다.
- BigData vs DBMS vs NoSQL
- 저장 방식은 NoSQL형태와 비슷하지만 대량 데이터 처리를 위한 분산 파일 시스템과 병렬 처리 시스템을 가지고 있다.
- 이들은 모두 서로 성격이 다른 기술이다. 상보적으로 보완기술로 적용될수 있다.
DB 랭킹 순위 보는 사이트 = https://codedragon.tistory.com/5138
- https://db-engines.com/en/ranking
DB 시스템 = https://codedragon.tistory.com/4408
- DB 시스템은 데이터를 DB에 저장하고, DBMS를 사용해서 필요한 정보를 생성하는 컴퓨터 중심으 시스템
- 데이터 베이스 관리 시스템 구성요소
- 데이터 베이스 사용자
- DB 시스템의 상세 구성 요소
데이터 언어 = https://codedragon.tistory.com/5417
- DB를 정의하고, 조작, 제어하기 위해서 사용되는 언어
- 즉, 사용자가 데이터 접근하는 수단으로서, 사용자와 DBMS간의 통신 수단을 제공하는 것
- 데이터 언어의 종류
- 데이터 언어의 완전성
- 데이터 언어가 반드시 갖추어야할 필수 요건
- 사용자가 원하는 어떤 데이터도 검색하고 처리할수 있으며 어떤 연산도 표현할수 있는 능력을 의미
SQL 데이터 정의어 = https://codedragon.tistory.com/4244
- DB 객체의 구조를 정의하거나 변경 또는 삭제하기 위해 사용하는 언어
- DDL은 데이터 구조를 정의하는 질의문으로 데이터베이스를 처음 생성하고 개발할때 주로 사용한다.
- DB 객체
- 생성된 DB를 효율적으로 관리하고 동작하게 만드는 요소로서, 논리적인 데이터 저장 구조이며, 스키마 객체라고도 한다.
- DB 객체의 종류
- 데이터 정의어의 명령어 종류
- 테이블의 종류
데이터 조작어(DML) = https://codedragon.tistory.com/4511
- 데이터의 검색 및 삽입, 삭제, 변경을 위해서 사용하는 언어
- DML은 데이터 베이스의 운영 및 사용과 관련해서 가장 많이 사용하는 질의문으로 데이터의 검색과 수정등을 처리한다.
- 데이터 조작어의 명령어 종류
- SQL의 테이블과 관계 데이터 모델의 릴레이션과의 차이점
- SQL의 테이블은 반드시 기본키를가져야 하는 것은 아니다.
- SQL의 한 테이블에는 동일한 행(레코드)이 중복될수 있다.
- 검색 시 DISTINCT옵션을 지정하면, 동일한 행을 제거할수 있다.
데이터 제어어(DLC) = https://codedragon.tistory.com/4246
- DB 사용자의 권한을 제어하기 위해서 사용하는 언어
- 데이터 제어어의 명령어 종류
- GRANT 명령
- DB관리자가 한명 이상의 사용자에게 여러개의 시스템 권한을 부여할때 사용하는 명령
- GRANT 명령의 일반형식
- GRANT 명령으로 DB관리자가 한 명 이상의 사용자에게 여러 개의 시스템 권한을 부여할때 사용
- GRANT 명령으로 객체의 소유자가 특정 객체 권한을 다른 사용자에게 부여 할수도 있다.
- 응용 프로그램 개발자가 가질수있는 시스템 권한의 종류
- REVOKE 명령 = https://codedragon.tistory.com/4246
- 사용자에게 부여한 권한을 철회할때 사용하는 명령
- REVOKE 명령의 일반 형식
- DCL 권한 부여 도식도
'SQL 과정' 카테고리의 다른 글
1.31 SQL spool, set 명령어(heading, linesize, pagesize, colume format) (0) 2019.01.31 1.31 SQL host, save, @ (0) 2019.01.31 1.31 SQL EDIT(ED), 편집/실행명령어 (0) 2019.01.31 1.31 SQL scott계정 emp, dept, salgrade 테이블 정보 확인 및 컬럼별 정보확인 (0) 2019.01.31 1.30 (NCS)java 기반 하이브리드 앱 개발 과정(jQuery-mdiaquery, interactive, Mobile) 수정중 (0) 2019.01.30