데이터베이스 - View, Trigger
2021. 5. 24. 14:57
🚛 Database/Database
https://www.youtube.com/watch?v=V5GN2FMBl4w
데이터베이스 - Transaction
2021. 5. 12. 14:58
🚛 Database/Database
트랜잭션의 특성 Atomicity = all or nothing : 한 트랜잭션 내의 모든 연산들이 완전히 수행되거나 전혀 수행되지 않음 Consistency : 트랜잭션이 수행된 후에도 데이터베이스가 그 전과 같은 일관된 상태를 가진다. "동시에 여러 사용자가 같은 데이터에 접근하려고 할 때" 발생하는 상황 Isolation : 한 트랜잭션이 데이터를 갱신하는 동안 이 트랜잭션이 완료되기 전까지 다른 트랜잭션이 접근하지 못하도록 한다. Durability : 갱신한 후에 시스템이 고장나더라도 갱신된 데이터들은 쭉 지속되어야 한다. Commit : 트랜잭션의 완료 Abort : 트랜잭션의 철회 = Rollback : 초기상태로 복귀 동시성 제어 serial schedule (직렬 스케줄) : 여러 트랜잭..
데이터베이스 - Relation design (1NF, 2NF, 3NF, BCNF)
2021. 5. 10. 14:54
🚛 Database/Database
Database anomaly(=데이터베이스 이상현상) 1. update anomaly(=갱신 이상) - 하나 바꾸려면 다 바꿔야함 - 데이터 갱신시 일관성 유지가 안되는 현상, 데이터 불일치(=inconsistency)발생 - 최유정 학생이 연락처를 변경하는 경우 B01, C01 튜플의 정보를 수정해야 하는데 1개의 튜플만 수정할 경우 발생 2. insert anomaly(=삽입 이상) - 어떤 속성 값을 넣지 않는 이상 삽입이 불가능 - 튜플 삽입시 지정하지 않은 속성값이 NULL을 갖는 현상 - 1604 홍길동 010-7777-3333 학생이 있으나 아직 수강하는 과목이 존재하지 않는 경우에는 과목코드에 NULL값이 저장되는 현상 3. delete anomaly(=삭제 이상) - 연쇄 삭제에 의한 ..
데이터베이스 - Primary key, Alternate key
2021. 4. 30. 11:11
🚛 Database/Database
식별자(Identifier)란? 한 실체(Entity)내에서 각각의 인스턴스를 유일하게 구분할 수 있는 단일 속성 또는 그룹 속성을 말한다. 실체 내에서 식별자에 동일한 값이 중복될 수 없으며, 이를 실체 무결성이라고 한다. 모든 Entity는 반드시 하나 이상의 식별자를 보유해야 하며 여러 개의 식별자를 보유하는 경우도 있다. 주로 이 식별자를 통해 해당 인스턴스의 구분이 가능해지며 검색이나 조인시 매우 중요하게 작용한다. 후보키(Candidate Key) 실체(Entity) 내에서 각각의 인스턴스를 유일하게 구분할 수 있는 속성으로, 하나 또는 여러 개의 속성으로 구성된다. 즉, 기본키(PK)가 될 수 있는 후보 속성이다. 아래의 예에서는 '사번'과 '주민번호'가 후보키에 해당한다. 기본키(Prima..
데이터베이스 - API
2021. 4. 14. 12:25
🚛 Database/Database
데이터베이스 - 내장 SQL (Embedded SQL), 커서 (Cursor)
2021. 4. 14. 10:45
🚛 Database/Database
응용프로그램(C, java, C# 등) 안에는 DB와 같은 명령어가 들어와야 한다. 따라서 Embedded SQL, 즉 내장 SQL이 된다. EXEC SQL 로 감싸서 사용 커서 : 데이터베이스 튜플을 쭉 가지고 왔는데 잘 가지고 왔니? 하면서 접근 하는 것 한번에 하나씩 이동하면서 처리할 수 있다. 1. 선언 2. 개방 3. 검색 4. 닫는다 1. declare 로 커서 선언 2. 여러개의 튜플들을 가져온다. 호스트 변수와 DB의 변수와 같은 것을 가져온다. open : 커서가 생성이 되었으니 개방을 한 다음에 이용한다. fetch : 커서에서 호스트 변수로 검색한다. close : 커서를 닫는다.
데이터베이스 - Relation Algebra
2021. 3. 10. 17:46
🚛 Database/Database
3x2 = 6 Join은 Selection과 Cross product의 조합으로 대체 가능 Natural join : 동일한 이름을 가진 모든 필드의 동등조건에 맞는 행을 선택 각 RA는 중복된 튜플이 존재할 수 있다 : NO 뭐가 개런티 해주냐? 어떤 개념인가? Key Key attribute 값이 다 다르므로 모든 relation에는 한개 이상의 key가 존재해야하만 한다 : Yes R Q L 는 read write를 다 의미한다. Read는 retrieve 라고 부른다 attribute Write는 modify 라고 부른다 tuple 스키마를 다루는 하나의 예제로서 하나의 쿼리를, 어떤 것을 다루게 된다 : Create table = 스키마를 다루는 부분. 스키마를 다루는 language : DDL..
데이터베이스 - DBMS
2021. 3. 10. 16:54
🚛 Database/Database
DBMS : 데이터베이스의 모든 액세스를 관리하는 응용 소프트웨어 데이터들을 정의, 조작, 제어 한다. 정의 : DB 생성시 DB를 정의한다. 조작 : 다수의 이용자들이 공동으로 이용할 수 있게 한다. 제어 : 정확도와 보안성을 높인다. DDL (Data Definition Language) DB의 구조(Schema, Domain, Table, View, Index)를 정의하는 언어 명령어 기능 CREATE Schema, Domain, Table, View, Index를 정의한다. ALTER Table에 대한 정의를 변경하는데 사용 DROP Schema, Domain, Table, View, Index 삭제 DML (Data Manipulation Language) 명령어 기능 SELECT 조건에 맞는 ..