오라클
-
[한기교] SQL 활용 필기(16) - 트리거비전공자 공부일기/:: DB - SQL 2020. 5. 5. 12:21
ㅁ 무결성의 의미 - 정밀성, 정확성, 정당성 - 허가 받은 사용자가 수행하는 갱신 작업에서 의미적 오류를 방지 - 의미적 제약의 개념 ㅁ 무결성 서브 시스템 - 사용자 요청> 보안 시스템> 갱신연산> 무결성 서브시스템> 갱신> 정확한 DB - 무결성 규정을 유지 관리 - 데이터베이스의 무결성을 유지 - 트랜잭션이 수행하는 갱신 연산이 무결성 규정을 위반하지 않는가를 감시 --- 위반 시에는 거부, 보고, 취소 / 복귀를 수행함 ㅁ 무결성 규정 대상 - 도메인 : 형식, 타입, 범위 - 기본키, 외래키 : 개체 무결성(Entity Integrity), 참조 무결성(Referencial Integrity) - 종속성 (묵시적 제약조건) : 함수 종속, 다치 종속, 조인..
-
[한기교] SQL 활용 필기(14) - 사용자 관리비전공자 공부일기/:: DB - SQL 2020. 5. 5. 11:49
ㅁ 보안 : 불법적인 데이터 폭로, 변경, 파괴로부터 데이터베이스를 보호하는 것 ㅁ 보안에 대한 통제 1) 법적, 윤리적 통제 --- 심리적 보안 2) 행정, 관리적 통제 --- 오용을 탐지하고 방지 3) 물리적 통제 --- 적극적, 물리적 보안으로 위반을 예방, 탐지 4) 기술적 통제 --- 하드웨어 통제 --- 소프트웨어 통제 --- 데이터베이스 통제 -> DBMS 보안 서브 시스템 -> 접근 제어 ㅁ 접근 제어 : 권한이 부여되지 않은 데이터의 검색이나 변경을 방지 1) 직접 접근 제어 - 사용자 신분증 확인(ID) - 신분증 본인 확인을 위한 인증(PASSWORD) - 요청 데이터 객체에 대한 요청 연산 권한(권한 부여) 2) 간접 접근 제어 - 한 장소에서 다른 장소로의 데이터 흐름..
-
[한기교] SQL 활용 필기(13) - 인덱스와 뷰비전공자 공부일기/:: DB - SQL 2020. 5. 5. 07:48
ㅁ 인덱스의 개념 - 검색 성능을 향상 시키기 위한 부가적인 자료 구조 - QL 명령문의 검색 속도를 향상시키기 위해 칼럼에 대해 생성하는 객체 - 포인트를 이용하여 테이블에 저장된 데이터를 랜덤 액세스하기 위한 목적으로 사용 * 객체지향 프로그래밍의 참조변수처럼 값이 아닌 주소값을 저장하는 개념 ㅁ 인덱스가 효율적인 경우 - WHERE 절이나 조인 조건절에서 자주 사용되는 칼럼의 경우 - 전체 데이터중에서 10~15%이내의 데이터를 검색하는 경우 - 두 개 이상의 칼럼이 WHERE절이나 조인 조건에서 자주 사용되는 경우 - 테이블에 저장된 데이터의 변경이 드문 경우 --- 색인은 부가적인 자료구조이므로, 데이터 삽입 시 비효율적일 수 있음 --- 인덱스는 실제 데이터가 아닌 값이 ..
-
[한기교] SQL 활용 필기(12) - 순위 계산비전공자 공부일기/:: DB - SQL 2020. 5. 5. 07:38
ㅁ Top 함수 : 질의 결과 튜플 수의 제한하는 함수 - Top(n) --- 질의 결과는 ORDER BY 절의 이용하여 정렬할 수 있음 --- ORDER BY 정렬 기준에서 특정 등수 / 비율까지만 보고 싶은 경우 SELECT TOP(n) 속성명 … ORDER BY 속성명 - WITH TIES : 동률이 있을 때 모두 보고 싶은 경우 SELECT TOP(n) WITH TIES 속성명 … ORDER BY 속성명 - Top(n) PERCENT : 정렬 기준 특정 비율까지만 보고 싶은 경우 --- 상위 n%까지만을 출력 --- WITH TIES와도 같이 쓸 수 있음 SELECT TOP(n) PERCENT [WITH TIES] 속성명 … ORDER BY 속성명 ㅁ RANK 함수 - TOP()..
-
[한기교] SQL 활용 필기(11) - 집합연산자, 집단연산자비전공자 공부일기/:: DB - SQL 2020. 5. 4. 14:44
ㅁ 집합 연산자의 개념 : 테이블을 구성하는 튜플 집합에 대한 테이블의 부분집합을 반환하는 연산자 ㅁ 집합 연산자의 종류 - UNION : 합집합 - INTERSECT : 교집합 - EXCEPT : 차집합 (Oracle에서는 MINUS로 사용) ㅁ UNION과 UNION ALL - 집합 연산자를 대상 테이블을 집합으로 봄 - 따라서 결과도 집합임 (중복을 허용하지 않음) - 필요에 따라서 중복된 결과도 보고 싶은 경우 (UNION ALL을 사용) ㅁ 합병 호환성 - ∪, ∩, - 연산의 피연산자(릴레이션)들이 지켜야 할 제약 조건 ㅁ 합병 호환성의 불일치 - 두 질의 결과는 합병 호환성을 만족하지 않음 - 합병 호환성이 만족되지 않는 두 테이블의 합집합 구하기 : ..
-
[한기교] SQL 활용 필기(10) - 중첩 질의문비전공자 공부일기/:: DB - SQL 2020. 5. 4. 14:08
ㅁ 중첩 질의문의 개념 - 하나의 SQL문의 결과를 다른 SQL문에 전달함 - 두 개의 SQL문을 하나의 SQL로 처리함 - 이론적으로 중첩 질의문은 조인 구문과 표현능력이 동일함 - SQL문 안에 SQL문이 포함되어 있음 ㅁ 조인 질의문과 중첩 질의문 이론적으로 중첩 질의문은 조인 구문과 표현능력이 동일. 따라서 중첩 질의문의 필요성 = 조인의 필요성 상황에 따라 취향에 따라(?) 조인 or 중첩 질의문이 더 편한 경우가 있기 때문에 사용 중첩 질의문이 좀더 직관적인 너낌적인 너낌 ㅁ 중첩 질의문의 표현 : SQL문 안에 SQL문이 포함되어 있음 ㅁ 단일행 서브 쿼리와 다중행 서브 쿼리 - 단일행 서브 쿼리 : 서브 쿼리의 결과로 하나의 튜플만이 반환됨 - 다..
-
[한기교] SQL 활용 필기(9) - JOIN비전공자 공부일기/:: DB - SQL 2020. 5. 4. 12:52
ㅁ 조인 JOIN의 개념 : 하나의 SQL 질의문에 의해서 여러 테이블에 저장된 데이터를 한번에 조회할 수 있는 기능 두 개 이상의 테이블을 '결합'한다는 의미 ㅁ SQL에서 간단한 조인 표기법 1) FROM절에 조인에 참여하는 두 테이블을 기록 (점. 으로 구분) 2) WHERE절에 조인 조건을 기술 (ex) 사원 정보: EMPLOYEE 부서 정보: DEPARTMENT 조인 조건: EMPLOYEE.DNO = DEPARTMENT.DNO ㅁ 조인문 작성시 규칙 1) 테이블 이름.컬럼 이름 : 서로 다른 두 테이블의 컬럼(속성)명이 같을 경우, 어느 속성이 어느 테이블에 있는 것인지 DBMS가 알 수 없음 ---> 컬럼 이름 앞에 테이블 이름을 접두사로 사용 / 테이블 이름..
-
[한기교] SQL 활용 필기(8) - 트랜잭션, TCL비전공자 공부일기/:: DB - SQL 2020. 5. 3. 16:21
트랜잭션 ㅁ 트랜젝션의 개념 : 논리적인 일의 단위 => 일반적으로 하나의 SQL은 하나의 트랜젝션이지만, 여러 개의 SQL문들이 합쳐져서 하나의 트랜젝션이 될 수도 있다 ㅁ 동시성 실생활에서는 항공기 예약, 은행, 신용카드 처리, 대형마트 등 대규모 데이터베이스를 수많은 사용자들이 동시에/여러부분에 접근한다 ===> 동시성 ㅁ 트랜잭션 단위 동시성 제어 : 동시에 수행되는 트랜잭션들이 데이터베이스에 미치는 영향 = 이들을 순차적으로 수행하였을 때 데이터베이스에 미치는 영향과 같도록 보장 - 다수 사용자가 데이터베이스를 동시에 접근하도록 허용하면서 데이터베이스의 일관성 유지 - 여러 사용자나 여러 응용 프로그램들이 동시에 수행되어도 서로 간섭하지 못하도록 보장함 ㅁ 트랜잭션 단위 회복 :..
-
[한기교] SQL 활용 필기(7) - DML (INSERT, UPDATE, DELETE)비전공자 공부일기/:: DB - SQL 2020. 5. 3. 13:10
데이터 삽입과 변경 ㅁ 단일행 입력 : 한번에 하나의 튜플을 테이블에 입력하는 방법 INSERT INTO 테이블명 [(속성명, ..., 속성명)] VALUES (값, ..., 값) - INTO 는 생략 가능 - 테이블명에 명시한 속성에 VALUES절에 지정한 값을 입력 - 테이블명에 속성을 명시하지 않으면 테이블 생성시 정의한 컬럼 순서와 동일한 순서로 입력함 ㅁ NULL의 입력 : 데이터를 입력하는 시점에서 해당 속성값을 모르거나, 미정일 때 사용 : NOT NULL 조건이 지정된 경우 입력이 불가능 1) 묵시적 방법 : INSERT INTO절에 해당 속성명 생략 2) 명시적 방법 : VALUES 절에 있는 속성값 대신 NULL 입력 ㅁ 서브 쿼리를 이용한 데이터 삽입 : 서브 ..
-
[한기교] SQL 활용 필기(6) - 데이터 검색비전공자 공부일기/:: DB - SQL 2020. 5. 3. 12:10
데이터 검색 1) 무조건 검색 SELECT 속성명1, 속성명2, ... FROM 테이블명 2) * (모든 속성) SELECT * FROM 테이블명 3) AS 키워드 (속성명 부여) - 질의 결과의 속성명을 바꾸어서 나타나게 하고싶을 때 - 질의결과에 수식을 사용했을 때 - 속성명이 없을 때 SELECT 원하는 속성(수식가능) AS 부여하고 싶은 속성명 FROM 테이블명 1) WHERE 절 (조건검색) SELECT 속성명 FROM 테이블명 WHERE 조건 2) 연산자 3) DISTINCT 키워드 (중복제거) - SQL은 Bag을 기반으로 하므로, 원래 중복된 것들도 모두 제시됨 - DISTICT를 이용하면 중복값을 제거한 결과를 조회 가능 SELECT DISTIN..