Computer Science/DataBase

제 1정규화원자성을 갖도록 테이블을 분해  제 2정규화제 1정규형에서 완전함수종속을 만들도록 테이블을 분해=> PK가 2개이상일때 분리하는작업 제 3정규화제 2정규형에서 이행적 종속을 없애도록 테이블을 분해A->BB->C 일때 A,B  ,  B,C 분해   반정규화(정규화 안함)조회성능향상유연성이 낮아짐    관계존재관계: 사원,부서행위관계: 주문,고객  조인분리된 두 테이블을 참조하기 위해 데이터를 연결하는 과정  트랜잭션하나의 연속적인 업무단위독립적으로 발생 금지부분 COMMIT 불가 -> 동시에 COMMIT 또는 ROLLBACK 처리   NULL아직 정해지지 않은값0이나 "" 하고 다름연산결과 항상 NULL집계함수 무시
속성업무에서 필요하는 성질,특징분리되지않는 최소 데이터단위ex)이름, 학번, 학과번호 엔터티 엔터티 속성   속성 특징주식별자에 함수적 종속성업무에 필요해야함1개의 값을 가짐(원자성)  속성분류속성의 특징에 따라기본속성: 업무에서 추출된 속성설계속성: 업무를 규칙화하기위해 만들어진 속성파생속성: 계산을 빠르게 하기위해 만들어짐  엔터티 구성방식에 따라PK:인스턴스를 식별FK:다른 엔터티와의 관계에서 포함일반속성: 엔터티에 포함되있지만 PK/FK가 아님   분해 여부에 따라단일속성: 이름, ID복합속성: 주소(시,구,동)다중값속성: 상품리스트 속성 명명규칙업무사용서술식 X약어X유일한명칭  도메인속성의 범위   관계엔터티간의 연관성   관계종류존재적관계:부서 and 사원행위적관계:고객 and 주문   관계구..
모델링현실세계의 비지늬스 프로세스와 데이터 요구사항을 "추상화", "구조화"한다. 모델링 특징단순화: 불필요한 세부사항 제거추상화: 간략하게명확화: 정확한 현상 모델링 유의점중복: 같은 정보를 저장하지 않도록 설계비유연성: 사소한 변화에 모델 변경 변화하면 안됨비일관성: 모순,상관되는 내용 없어야함, 데이터 중복없어도 발생가능 모델링 요소엔터티속성관계 모델링 3단계개념적 모델링: 핵심 엔터티를 추출논리적 모델링: 데이터 정규화 수행, 세부속성,식별자,관계 표현물리적 모델링: 물리적으로 생성   ERD 절차엔터티 도출, 그림엔터티 배출엔터티 관계 설정관계명관계 참여도관계 필수여부   엔터티현실세계에서 독립저긍로 식별 가능한 객체나 사물인스턴트로 이루어진 집합인스턴스는 속성값들로 이루어짐 엔터티 특징유일한 ..
모델링 특징 추상화: 일정한 형식에 맞춰 표현 단순화: 제한된 표기법이나 언어로 표현 명확성: 이해하기 쉽게 표현하기 위해 애매모호함 제거 유의점 중복 : 중복되는 정보 최소화 비유연성: 데이터 정의와 데이터 사용 프로세스 분리 비일관성: 데이터들간 상호연관 관계에 대한 명확한 정의 스키마 외부스키마:각 사용자 단계의 DB 스키마. (사용자 관점)(개개인 사용자) 개념스키마:조직 전체의 DB 스키마. (설계자 관점)(모든 사용자) 내부스키마:물리적으로 데이터가 저장되는 스키마. (개발자 관점) (물리적 저장 구조) 모델링 3단계 개념적 데이터 모델링: 추상화 논리적 데이터 모델링: 속성,관계표현,속성 물리적 데이터 모델링:성능, 저장 등 물리적인 성격 데이터 독립성 논리적 독립성:개념 스키마가 변경되도 ..
✨SELECT 테이블에서 데이터를 선택한다. SELECT -> FROM -> JOIN -> ON -> WHERE -> GROUP BY -> HAVING -> ORDER BY -> LIMIT 순서로 작성된다. SELECT mem_id , SUM(price*amount) FROM table1 GROUP BY mem_id HAVING SUM(price*amount) > 1000 ORDER BY SUM(price*amount) DESC LIMIT 6; ✨FROM 조회할 테이블을 지정한다. ✨JOIN join할 테이블을 지정한다. ✨WHERE 테이블의 조건을 통해 데이터를 필터링한다. ✨GROUP BY 열을 선택하여 그 열을 기준으로 조회한 데이터 목록을 그룹핑한다. ✨HAVING GROUP BY로 그룹핑후 각 ..
✨INNER JOIN table1, table2 를 조인하여 두개다 조회한다. USE test_db; SELECT * FROM table1/table1을 조회한다. INNER JOIN table2/table2도 조인하여 조회한다 ON table1.mem_id = table2.mem_id/table1.mem_id 와 table2.mem_id가 같은행만 WHERE table1.mem_id = '홍길123';/mem_id가 홍길123 인것에서 ✨OUTER JOIN LEFT OUTER JOIN : table1을 기준테이블로 조인한다. RIGHT OUTER JOIN:table2를 기준테이블로 조인한다. 기준테이블은 모두 조회되지만 조건에 맞지않는 열은 NULL로 조회된다. USE test_db; SELECT * ..
✨Create 데이터베이스(스키마), 테이블을 만든다. CREATE DATABASE test_db; CREATE TABLE sample_table( mem_idCHAR(8), mem_name VARCHAR(10), mem_numberTinyint, addrCHAR(2), phoneCHAR(10) ); ✨DROP 테이블의 구조와 데이터를 삭제시킨다. DROP TABLE test_table; ✨USE 데이터베이스(스키마)를 사용한다. USE test_db; ✨INSERT 테이블에 데이터들을 삽입한다. INSERT INTO test_db.sample_table VALUES('qwe123',"홍홍홍",3,12,000-1134), ('rrr112',"길부지",2,54,111-4444); ✨UPDATE 테이블의 데..
✨데이터베이스(DB, Database) 데이터들의 집합 ✨DBMS(DataBase Management System) 데이터 베이스를 관리하기 위한 소프트웨어 EX)MySQL, Oracle, MariaDB, SQLite 🔍관계형 DBMS (RDBMS) =대부분의 DBMS 형태, 열과 행으로 이루어진 테이블로 구성되어있다. 🔍망형 DBMS =계층형 DBMS를 보안하기 위해 만들어짐(지금은 잘 사용안함) 🔍계층형 DBMS =트리형식의 DBMS (지금은 잘 사용안함) ✨SQL RDBMS에서 데이터를 구축,관리,활용을 위해 사용되는 언어 각 RDBMS는 약간씩 변형된 SQL 문법을 가지고 있지만 기본적으로 표준 SQL 를 지킨다. ✨기본키(Primary key) 테이블의 모든 행을 고유하게 식별하는 열 🔍중복되지..
아사_
'Computer Science/DataBase' 카테고리의 글 목록 (2 Page)