목록자격증/SQL 개발자 (23)
RUBY
01. 관계형 데이터베이스 개요 데이터베이스 데이터를 저장하는 공간 일반적으로 데이터베이스는 용도와 목적에 맞는 데이터들끼리 모아서 저장함 관계형 데이터베이스 RDB(Relational Database) - 관계형 데이터베이스 관계형 데이터 모델에 기초를 둔 데이터베이스 RDBMS(Relational Database Management System) - RDB를 관리, 감독하기 위한 시스템 RDBMS - Oracle, SQL Server(MSSQL), MySQL, MariaDB, PostgreSQL 등이 이에 속함 TABLE 관계형 데이터 베이스를 2차원 테이블 형태로 표현한 것(엑셀 표 모습) SQL(Structured Query Language) 관계형 데이터베이스에서 데이터를 다루기 위해 사용하는 언어
정규화 데이터 정합성(데이터의 정확성과 일관성을 유지하고 보장)을 위해 엔터티를 작은 단위로 분리하는 과정 정규화를 할 경우 데이터 조회성능은 처리조건에 따라 향상되는 경우도 있고 저하되는 경우도 있지만 입력, 수정, 삭제 성능은 일반적으로 향상된다고 볼 수 있다. (1) 제 1 정규형 모든 속성은 반드시 하나의 값만 가져야 한다. (2) 제 2 정규형 엔터티의 모든 일반속성은 반드시 모든 주식별자에 종속되어야 한다. (3) 제 3 정규형 주식별자가 아닌 모든 속성 간에는 서로 종속될 수 없다. (4) 주의사항 과유불급이란 말이 있듯이 적절한 정규화는 성능상 이롭지만 지나친 정규화는 오히려 성능 저하를 일으킬 수 있다. 반정규화 데이터의 조회 성능을 향상시키기 위해 데이터의 중복을 허용하거나 데이터를 그..
식별자 - 어떤 대상을 유일하게 식별 및 구별할 수 있는 이름 - 각각의 인스턴스를 구분 가능하게 만들어주는 대표 격인 속성 주식별자 - 기본키, PK(Primary Key)에 해당하는 속성 - 하나의 속성이 주식별자가 될 수도 있고 여러 개의 속성이 주식별자가 될 수도 있다. 1) 유일성 - 각 인스턴스에 유니크함을 부여하여 식별이 가능하도록 한다. 2) 최소성 - 유일성을 보장하는 최소 개수의 속성이어야 한다. 3) 불변성 - 속성값이 되도록 변하지 않아야 한다. 4) 존재성 - 속성값이 NULL일 수 없다. 분류 1) 대표성 여부 (1) 주식별자 (Primary Identifier) - 유일성, 최소성, 불변성, 존재성을 가진 대표 식별자 - 다른 엔터티와 참조 관계로 연결 (2) 보조식별자(Alt..

관계 엔터티와 엔터티와의 관계 1) 존재 관계 존재 자체로 연관성이 있는 관계 ex) 직원 - 부서, 학생 - 학과 2) 행위 관계 특정한 행위를 함으로써 연관성이 생기는 관계 ex) 회원 - 주문, 학생 - 출석부 3) 표기법 ① 관계명(Membership) - 관계의 이름 - 엔터티와 엔터티가 어떠한 관계를 맺고 있는지 나타내주는 문장 - 모든 관계는 두 개의 관계명을 가지고 있는데, 각 엔터티의 관점에서 관계명을 하나씩 가지기 때문 - 관계명은 반드시 명확한 문장으로 표현해야 하며 현재형이어야 한다. ex) 연관성이 있다(X), 주문한다(O), 관계가 있다(X), 소속된다(O), 출석을 했다(X), 출석을 한다(O) ② 관계차수(Cardinality) - 각 엔터티에서 관계에 참여하는 수 (1) 1..

속성 * 더 이상 쪼개지지 않는 레벨 * 프로세스에 필요한 항목이어야 함 속성값 - 각각의 속성은 속성값을 가짐 - 속성값은 엔터티에 속한 하나의 인스턴스를 구체적으로 나타내주는 데이터 (인스턴스 : 실행 중인 임의의 프로세스, 클래스의 현재 생성된 오브젝트) - 하나의 속성은 한 개의 속성값만 가질 수 있음 (만약 하나의 속성이 여러 개의 속성값을 갖는 경우 별도의 엔터티로 분리하는 것이 바람직함) 엔터티, 인스턴스, 속성, 속성값의 관계 1) 한 개의 엔터티는 두 개 이상의 인스턴스를 갖는다. 2) 한 개의 인스턴스는 두 개 이상의 속성을 갖는다. 3) 한 개의 속성은 하나의 속성값을 갖는다. 분류 1) 특성에 따른 분류 ① 기본속성(Basic Attribute) - 업무 프로세스 분석을 통해 바로 ..
02. 엔터티(Entity) 엔터티 = 독립체 데이터베이스에서 엔터티 = 식별이 가능한 객체 * 전문가들이 정의한 엔터티 - Peter Chen (1976) 식별할 수 있는 식물 - C.J Date (1986) 데이터베이스 내에서 식별 가능한 객체 - James Martin (1989) 정보를 저장할 수 있는 어떤 것 - Thomas Bruce (1992) 정보를 저장할 수 있는 사람, 장소, 물건, 사건 그리고 개념 등 엔터티 : 업무에서 쓰이는 데이터를 용도별로 분류한 그룹 1) 각각의 엔터티는 자신을 더 상세하게 나타내기 위해 속성(attribute)을 갖게 된다. 2) 속성의 개수는 엔터티마다 달라서 용도에 따라 매우 많거나 적을 수 있다. 3) 실질적으로 업무에서 쓰이는 정보여야 엔터티로 도출하..

01. 데이터 모델의 이해 1) 데이터베이스의 모델링 - 현실 세계를 단순화하여 표현하는 기법 2) 모델링의 특징 ① 추상화(Abstraction) 현실 세계를 일정한 형식으로 표현하는 것이다. 즉, 아이디어나 개념을 간략하게 표현하는 과정이다. ② 단순화(Simplification) 복잡한 현실 세계를 정해진 표기법으로 단순하고 쉽게 표현한다는 의미이다. ③ 명확화(Clarity) 불분명함을 제거하고 명확하게 해석할 수 있도록 기술한다는 의미이다. - 데이터베이스의 모델링은 '현실세계를 추상화, 단순화, 명확화하기 위해 일정한 표기법에 의해 표현하는 기법'이다. 3) 모델링의 세 가지 관점 ① 데이터 관점(What, Data) 데이터 위주의 모델링 업무가 어떤 데이터들과 관련이 있는지, 데이터 간에는 ..