데이터베이스 5

Ch6. Entity-Relationship Model

챕터 7은 개체-관계 모델(E-R 모델)에 배우는데 첫 번째 강의 개체, 관계, 속성에 대해 배웠다 개체는 다른 객체와 구별되어 존재하는 하나의 객체이고 개체들은 속성을 갖고 있다 개체 집합은 같은 특성을 가지고 있는 같은 타입의 개체들의 집합이고 관계 집합은 관계(각 개체들의 순서쌍)의 집합이다 관계 차수는 관계 집합의 관계에 참여하는 개체 집합의 수이다 속성은 타입이 있는데 단순 속성 - 더 이상 나누어지지 않는 속성 복합 속성 - 더 작은 다른 속성으로 나누어질 수 있다->사용하면 일부만을 참조할 때 좋고 모델링을 명확하게 할 수 있다 단일 값 속성 - 특정 개체에 대해서 하나의 값을 가지는 속성 다중 값 속성 - 여러 개의 값을 가질 수 있는 속성 유도(derived) 속성 - 저장되지 않고 필요..

Ch5. Advanced SQL

챕터5에서는 데이터베이스 프로그래밍 언어를 사용해서 데이터베이스에 접근하는 방법이 필요한지에 대해 알아봤고 JDBC 프로그래밍에 대해 배워봤다 먼저 첫 강의에서는 프로그래밍 언어로 데이터베이스에 접근하는 방법에 대해 공부했는데 범용 프로그래밍 언어로 데이터베이스에 접근하는 이유는 SQL은 데이터를 어떻게 가져오는 지에 대한 기술이 없기 때문이다. SQL로 다 표현할 수 없는 질의를 작성하기 위해 더 강력한 프로그래밍 언어에 SQL을 내장시켜야 한다 데이터베이스 서버에 접근하는 방법은 2가지로 1. Dynamic SQL - 프로그래밍 언어를 직접 사용하기 때문에 직접 JAVA API를 호출할 수 있고 따로 컴파일러가 필요하지 않다 2. Embedded SQL - 데이터베이스 서버와 소통할 수 있는 수단을 ..

Ch4. Intermediate SQL

이번 챕터 4에서는 좀 더 다양한 조인 방법과 가상 릴레이션인 뷰의 개념, Transaction, 무결성 제약조건, 데이터 정의, 권한에 대해서 배웠는데 첫 강의에서는 조인 연산은 두 개의 릴레이션을 결합해서 하나의 릴레이션으로 넘겨주는 거라 배웠는데 내부 조인은 매치되지 않은 투플을 유지하지 않는 것으로 보통의 조인인데 좀 더 다른 조인 방법으로는 Outer join, Left outer join, Right outer join, Full outer join, Join using, on condition이 있는데 Outer join은 두 릴레이션에 natural join 연산을 할 때 조인 속성 값이 같은 투플이 상대 릴레이션에 존재하지 않아 조인 연산에서 제외된 투플들을 결과 릴레이션에 포함시키는 조..

Ch3. SQL

챕터 3는 Data Manipulate Language의 대표적인 언어 SQL에 대해서 배웠는데 양이 가장 많았다. 그리고 강의 중에 예를 드는 게 너무 많아서 힘들었지만 그래도 어찌저찌 잘 끝낸 거 같아서 다행이었다. 일단 SQL 첫 강의에서는 SQL에 대한 간단한 개요에 대해서 배웠는데 SQL의 역사에 대해 간단히 배우고 SQL 도메인 타입과 무결성 제약조건에 대해서 배웠는데 무결성 제약조건은 간단하게 1. null 값을 가질 수 없고 2. 기본키를 구성하는 속성은 null값, 중복된 값을 가질 수 없고 이미 릴레이션 안에 존재하는 기본 키 값을 가진 tuple은 삽입될 수 없다였다 그리고 릴레이션을 정의하는 예를 보고 릴레이션의 스키마를 삭제하거나 수정하는 명령어까지 알아봤다 두 번째 강의에서는 기..

Ch1. 데이터베이스 소개

이번에 dev2play 활동을 하면서 블로그에 공부한 걸 올리기로 했는데 이런 게 너무 익숙하지 않다보니 좀 낯설지만 일단 어설프게라도 시작해 볼 생각이다. 데이터베이스 공부는 edwith 부스트코스에서 인터넷 강의를 들으며 PPT로 공부했던 내용을 정리하는 식으로 공부했다. 아직은 Chapter 1만 했지만 곧 Chapter 12까지 수두룩하게 채워지는 것을 볼 수 있을 것이다! Chapter 1은 데이터베이스에 대해 소개를 해줬고 1~3강까지 있었다. 배운 내용을 토대로 요약해보자면 우리가 흔히 아는 데이터베이스란 단순히 데이터를 모아놓는 것이 아니라 데이터베이스 매니지먼트 시스템(DBMS)을 의미하는 것이었다. 오늘날 데이터베이스는 여러 분야에서 쓰이고 있고 예를 들어 은행의 고객 계좌 관리나 우리..