반응형

DB 7

[SQLD] 4-7. SQL 활용 - DCL, Oracle/SQL Server/DB 유저와 권한

A. DCL(DATA CONTROL LANGUAGE) 개요 - 유저를 생성하고 권한을 제어할 수 있는 명령어  B. 유저와 권한- 데이터베이스는 데이터 보호와 보안을 위해서 유저와 권한을 관리  Oracle 유저와 권한 특징1. 유저를 통해 데이터베이스에 접속을 하는 형태 2. 아이디와 비밀번호 방식으로 인스턴스에 접속 3. 스키마에 오브젝트 생성 등의 권한을 부여받음  SQL Server 유저와 권한 특징1. 로그인 생성 2. 인스턴스 내에 존재하는 데이터베이스에 연결하여 유저 생성 3. 로그인과 유저를 매핑 4. 특정 유저는 특정 데이터베이스 내의 특정 스키마에 대해 권한을 부여받을 수 있음  C. 유저 생성과 시스템 권한  Oracle - 유저생성1. 유저 생성은 CREATE USER 권한이 필요 ..

[SQLD] 4-5. SQL 활용 - 그룹 함수, ANSI/ISO SQL 표준, ROLLUP, GROUPING, CUBE

A. 데이터 분석을 위한 함수 ( ANSI/ISO SQL 표준 )    B. GROUP FUNCTION - ROLLUPGROUP BY의 확장된 형태병렬 수행 가능시간 및 지역처럼 계층적 분류를 포함하고 있는 데이터의 집계에 적합지정된 칼럼목록은 소계를 생성하기 위해 사용Grouping Columns의 수+1 Level의 Subtotal이 생성ROLLUP의 인수는 계층 구조이므로 인수 순서가 바뀌면 수행 결과도 변경계증간 집계에 대해서는 LEVEL별로 정렬계층 내 GROUP BY 수행 결과는 정렬을 지원하지 않아 별도의 ORDER BY 절을 사용하여 정렬  C. GROUP FUNCTION - GROUPING 1. 소계가 계산되는 행은 1, 소계가 아닌 행은 2를 반환하는 함수  D. GROUP FUNCTI..

[SQLD] 3-4. SQL 기본 - TCL 개념, 트랜잭션, COMMIT, ROLLBACK, SAVEPOINT

TCL(Transaction Control Language)  1) 개념 논리적인 작업의 단위를 묶어서 DML에 의해 조작된 결과를 작업단위(트랜잭션) 별로 제어하는 명령어  2) 종류 COMMIT, ROLLBACK, SAVEPOINT    A. 트랜잭션 개요1. 트랜잭션이란 데이터베이스의 논리적 연산 단위이며 분리될 수 없는 한 개 이상의 데이터베이스 조작 단위 2. 하나의 트랜잭션에는 하나 이상의 SQL 문장이 포함 3. 트랜잭션은 분할할 수 없는 최소의 단위 4. 전부 작용하거나 전부 취소 (All OR Nothing)  B. 트랜잭션 특징원자성(Atomicity) - 트랜잭션에서 정의된 연산들은 모두 성공적으로 실행되던지 아니면 전혀 실행되지 않은 상태로 남아 있어야 함 (All or Nothi..

[SQLD] 3-3. SQL 기본 - DML 개념, 종류, 구문

DML(Data Manipulation Language) 1) 개념 - 만들어진 테이블에 관리하기를 원하는 자료들을 입력, 수정, 삭제, 조회하는 조작 관련 명령어 2) 종류- INSERT, UPDATE, DELETE, SELECT   A. DML : INSERT 1. 테이블에 데이터를 입력하는 명령어 2. INSERT문의 구문형식은 COLUMN LIST를 작성 여부에 따라 두 가지 구문이 존재 【1번째 구문 형식 : 컬럼 목록 작성】 1. INSERT INTO “테이블명” (COLUMN1, COLUMN2 … ) VALUES (VALUE1, VALUE2, …); 2. INSERT INTO PLAYER (PLAYER_ID, PLAYER_NAME, PLAYER_NO) VALUES (‘ABC123’, ’박지성..

[SQLD] 3-2. SQL 기본 - DDL 개념, 종류, 테이블 생성 규칙, 제약 조건

DDL(Data Definition Language) 1) 개 념 테이블과 같은 데이터 구조를 정의하는 데 사용되는 명령어들로 그러한 구조를 생성/변경/삭제하거나 이름을 바꾸는 데이터 구조와 관련된 명령2) 종 류CREATE, ALTER, DROP, RENAME, TRUNCATE A. DDL(Data Definition Language)자주 사용되는 데이터 유형데이터 유형설 명CHARACTER(s)고정 길이 문자열 정보 (Oracle, SQL Server 모두 CHAR로 표현)s는 기본 길이 1바이트, 최대 길이 Oracle 2,000바이트, SQL Server 8,000바이트입력 값의 길이가 s보다 작을 경우 그 차이 만큼 공백문자로 입력됨VARCHAR(s)가변 길이 문자열 정보 (Oracle은 VAR..

[SQLD] 2-5. 데이터 모델과 성능 - 예상문제풀이 (Question&Answer)

문제 1. 데이터 모델을 다음과 같이 만들었는데 학번, 과목번호 } 결정자이면서 PK이고 성적, 지도교수명, 학과명 } 종속자이다. 속성 중 과목번호가 결정자이고 지도교수명, 학과명 이 과목번호에만 함수종속성을 가진다면 이는 몇 차 정규형에 속하고 몇 차 정규화의 대상인가? ① 1 차 정규형 - 2 차 정규화대상 ② 2 차 정규형 - 3 차 정규화대상 ③ 3 차 정규형 - 보이스코드 정규화대상 ④ 보이스코드 정규형 - 4 차 정규화대상  문제 2. 다음 모델에서 배송 엔터티에서 고객의 정보를 찾을 때 성능향상과 SQL 문장을 단순화하게 할 수 있도록 가장 적절한 반정규화 방법은 무엇인가? (전제사항 : 주문목록 엔터티에서는 고객의 주식별자를 상속받기를 원하지 않음, 배송 엔터티에서는 고객 엔터티의 모든 ..

[SQLD] 1-2. 데이터 모델의 이해 - 엔터티(Entity) 특징, 분류, 명명법

A. 엔터티란?1. 식별이 가능한 객체2. 사람, 사물, 사건, 개념 등의 명사에 해당3. 비즈니스 관점에서 IT 시스템을 통해 관리가 필요한 관심사4. 비즈니스를 구현하기 위해 저장해야 하는 어떤 것  B. 엔터티 특징1. 업무에서 필요로 하는 정보 : 비즈니스 요구 조건 만족을 위해 반드시 필요하고, 저장 및 관리하고자 하는 정보여야 한다.2. 식별 가능해야 함 : 유일한 식별자에 의해 식별이 가능해야 한다.3. 인스턴스의 집합 : 연속적으로 존재하는 2개 이상의 인스턴스 집합이어야 한다.4. 업무 프로세스에 의해 이용 : 엔터티는 비즈니스 프로세스에 의해 반드시 이용되어야 한다. 업무 프로세스에 의해 insert, select, update, delete 등이 발생하지 않는 고립된 엔터티의 경우는 ..

반응형