논리적 데이터 모델링 강의를 보고 정리합니다. 목차 데이터베이스 설계 단계 개념적 데이터 모델링 결과 논리적 설계 릴레이션 스키마 변환 규칙 규칙 1 - 모든 개체는 릴레이션으로 변환 규칙 2 - 다대다 관계는 릴레이션으로 변환 규칙 3 - 일대다 관계는 외래키로 표현 규칙 3.1 - 일반적인 일대다 관계는 외래키로 표현 규칙 3.2 - 약한 개체가 참여하는 일대다 관계는 외래키를 포함해 기본키 지정 규칙 4 - 일대일 관계는 외래키로 표현 규칙 4.1 - 일반적인 일대일 관계는 외래키를 서로 주고 받는다. 규칙 4.2 - 필수적으로 참여하는 개체 릴레이션만 외래키를 받는다. 규칙 4.3 - 모든 개체가 필수적으로 참여하면 릴레이션을 하나로 합친다. 규칙 5 - 다중 값 속성은 릴레이션으로 변환 기타 고..
DB
개념적 데이터 모델링 강의를 보고 정리합니다. 목차 데이터베이스 설계 단계 요구 사항 분석 개념적 설계 개체와 속성 추출 관계 추출 E-R 다이어그램 작성 데이터베이스 설계 단계 → E-R 모델과 릴레이션 변환 규칙을 이용한 설계의 과정 설계 과정 중 오류 발견 시 이전 단계로 되돌아가 설계 내용을 변경할 수 있다. → 데이터베이스 설계 과정의 각 단계별 주요 작업과 결과물 요구 사항 분석 목적 사용자의 요구 사항을 수집하고 분석하여 개발할 데이터베이스의 용도를 파악 업무에 필요한 데이터가 무엇인지, 그 데이터에 어떤 처리가 필요한지 등을 고려 결과물 요구 사항 명세서 주요 작업 데이터베이스를 실제로 사용할 주요 사용자의 범위를 결정 사용자가 조직에서 수행하는 업무..
목차 데이터 모델링 2단계 데이터 모델링 데이터 모델 데이터 모델링과 데이터 모델의 관계 데이터베이스 설계 개체-관계 모델(E-R Model) 개체 속성 관계 속성의 분류 단일값 속성, 다중값 속성 단순 속성, 복합 속성 유도 속성 널(Null) 속성 키 속성 관계의 유형 일대일(1:1) 관계 일대다(1:n) 관계 다대다(n:m) 관계 관계의 참여 특성 관계의 종속성 논리적 데이터 모델 관계 데이터 모델 계층 데이터 모델 네트워크 데이터 모델 데이터 모델링(Data Modeling) 현실 세계에 존재하는 데이터를 컴퓨터 세계의 데이터 베이스로 옮기는 변환 과정으로 데이터베이스 설계의 핵심 과정이다. 현실 세계의 데이터를 바로 변환하기는 어렵기 때문에 2단계 데이터 모델링이 등장한다. 2단계 데이터 모델링..
목차 용어 정의 데이터베이스 시스템 사용자 데이터 언어 데이터 정의어 데이터 조작어 데이터 제어어 데이터베이스 관리 시스템 3단계 데이터베이스 구조 외부 단계 개념 단계 내부 단계 3단계 데이터베이스 구조의 매핑 데이터 독립성 시스템 데이터베이스 시스템 카탈로그 데이터 디렉토리 데이터베이스 시스템 아키텍쳐 용어 정의 DB 시스템을 공부하기 전 용어를 정리한다. 데이터(Data) 알려진 사실(fact)로서 의미를 가지면서 기록될 수 있는 것 데이터베이스(DB; Database) 특정한 의미를 갖는 관련있는 데이터의 집합 데이터베이스 관리 시스템(DBMS; Database Management System) 데이터베이스의 생성과 관리를 담당하는 소프트웨어 패키지 데이터베이스 시스템(DBS; Database S..
DB | SQL 기초 연습 (1)에 이어 작성한다. Implicit INNER JOIN 해당 포스팅 작성 시점은 아직 명시적 JOIN을 공부하기 전이라 WHERE 절에 조건을 작성하는 Implicit(묵시적) INNER JOIN으로 연습한다. 고객과 고객의 주문 SELECT * FROM customer, orders WHERE customer.custid = orders.custid; 고객과 고객의 주문을 고객 번호로 정렬 SELECT * FROM customer, orders WHERE customer.custid = orders.custid ORDER BY customer.custid; 모든 주문에 대해 고객의 이름, 구매 금액 SELECT name, saleprice FROM customer, or..
DB, Table 생성 SQL 기초를 익히기 위해 서점의 데이터를 가정하고 bookstore DB에 아래 3개의 table을 생성한다. book table customer table )) orders table )) SQL문의 처리 순서 SELECT phone FROM customer WHERE name='김연아'; ① FROM customer ② WHERE name='김연아' ③ SELECT phone SELECT / FROM 기본 구조 SELECT [column] FROM [table_name]; 모든 책의 제목과 가격 SELECT title, price FROM book; 모든 책의 가격과 제목 SELECT price, title FROM book; 모든 책의 번호, 제..
DB 정보 관리 도구인 파일은 사용하기 쉽고 어디에나 있으면서 전송하기 편리해 지금도 사용하고 있다. DB도 결국 데이터를 파일에 저장한다. 정보의 양이 증가하고 다양해지면서 파일만으로는 정보를 효과적으로 입력, 저장, 출력하는 것이 어려워졌다. 데이터를 잘 정리정돈해서 필요할 때 꺼내서 쓰고 싶은 욕구가 생겼고 누구나 쉽게 데이터를 정리정돈할 수 있는 전문적인 소프트웨어 DB가 등장했다. 관계형 DB는 데이터를 표의 형태로 정리정돈하기가 가능하며 정렬, 검색 작업을 빠르고 안전하게 할 수 있다. MySQL, Oracle 등은 관계형 DB라는 토대 위에서 만들어진 기술이기 때문에 하나만 배워도 다른 것을 배우기가 쉽다. 무료이고 오픈소스이며 관계형 DB의 주요 기능을 갖추고 있는 MySQL을 학습한다. ..
File은 성능이나 보안, 편의성에 한계가 있었고 이를 극복하기 위해 Database가 탄생했다. input, output 어떤 데이터베이스를 만나든 제일 먼저 해야 하는 것은 input과 output의 방법을 파악하고 따져보는 것이다. input은 생성, 수정, 삭제로 쪼개진다. Create, Update, Delete. output은 Read에 해당한다. 데이터 관련해서 필요한 것의 거의 모든 것이라고 할 수 있다. CRUD라고 부른다. 그외 복잡한 기능들은 CRUD를 보좌하는 부가적인 기능들이다. 스프레드시트 단순히 텍스트 파일만으로는 검색, 정렬 등 여러가지 작업이 쉽지 않다. 위 문제를 해결하기 위해 사람들은 스프레드시트를 사용한다. 엑셀의 데이터 필터기능을 사용하면 된다. 구조적으로 데이터를 ..