데이터베이스의 모델링은 현실 세계를 단순화하여 표현하는 기법이다현실 세계에서 일어날 수 있는 다양한 현상에 대해서 일정한 표기법에 의해 표현해 놓은 모형모델링이 갖춰야 할 조건현실세계를 반영해야 한다단순화하여 표현해야 한다관리하고자 하는 데이터를 모델로 설계한다추상화(
사전적인 의미는 ‘독립체’데이터베이스에서의 엔터티는 식별이 가능한 객체업무에서 쓰이는 정보여야 함유니크함을 보장할 수 있는 식별자가 있어야 함2개 이상의 인스턴스를 가지고 있어야 함반드시 속성을 가지고 있어야 함다른 엔터티와 1개 이상의 관계를 가지고 있어야 함유형 v
사물이나 개념의 특징을 설명할 수 있는 항목의미상으로 더 이상 쪼개지지 않는 레벨프로세스에 필요한 항목이여야 함각각의 속성은 속성값을 가짐속성값은 엔터티에 속한 하나의 인스턴스를 구체적으로 나타내는 데이터하나의 속성은 한 개의 속성값만 가질 수 있음엔터티 > 인스턴스
엔터티와 엔터티와의 관계연관성에 따라 존재 관계와 행위 관계로 나눔존재 관계연관성이 있는 관계 ( 직원과 부서, 학생과 학과 )행위 관계특정한 행위를 함으로써 연관성이 생기는 관계( 회원과 주문, 학생과 출석부 )관계명 : 관계의 이름한 관계에는 두 개의 관계명을 가짐
엔터티의 속성들 중 각각의 인스턴스를 구분 가능하게 만들어주는 대표격인 속성ex ) 학번, 사번, 상품코드, 회원번호 등기본키 PK(Primary Key)에 해당하는 속성하나 또는 여러 개의 속성이 주식별자가 될 수 있음주식별자의 특징유일성 : 각 인스턴스에 유니크함을
데이터의 조회 성능을 향상시키기 위해 데이터의 중복을 허용하거나 데이터를 그룹핑조회성능은 향상될 수 있으나 입력, 수정, 삭제 성능은 저하될 수 있음데이터 정합성이슈가 발생할 수 있음테이블 병합업무 프로세스상 JOIN이 필요한 경우가 많아 테이블을 통합하는 것이 성능
abs : 절댓값 함수ceil, ceiling : 올림 함수floor, truncate : 내림 함수pow, power : 지수 함수Mod : 나머지 함수greatest, least : 최댓값, 최솟값 함수
ASCII : 아스키코드 값 리턴 함수concat : 문자열 합치기 함수insert : 기존 문자열을 인덱스로 접근하여 새로운 문자열로 바꾸기replace : 기존 문자열중 일부 문자열을 새로운 문자열로 바꾸기instr : 문자열 위치 인덱스 값을 리턴mid, subs
now, sysdate, current_timestamp : 현재 날짜와 시간curdate, current_date : 현재 날짜 , curtime, current_time : 현재 시간date_add : 날짜 연산년, 월, 주, 요일 등날짜 포맷
count, sum, avg, max, minif, ifnull, nullif
Select문 실행 순서
alias를 정렬하기 위해서는 백틱 \`\`을 이용하거나 column 번호를 이용한다
limit을 사용하여 특정 행만 선택할 수 있다limit n : 처음부터 n까지 행 ( 상위 n행 )limit n, m : n+1행부터 m개의 행 ( limit의 첫번째 파라미터는 0부터 시작 )
length는 byte길이를 출력하기 때문에 한글을 length로 출력하면 정확한 길이를 알 수 없다char_length를 사용하면 byte길이가 아닌 글자 수를 세어준다
둘 이상의 테이블에서 데이터가 필요한 경우 테이블 조인일반적으로 조인 조건을 포함하는 WHERE절을 작성조인조건은 일반적으로 각 테이블의 PK 및 FK 로 구성Inner JoinOuter JoinLeft Outer JoinRight Outer JoinNatural Jo
데이터 정합성(데이터의 정확성과 일관성을 유지하고 보장)을 위해 엔터티를 작은 단위로 분리하는 과정정규화 시 데이터 조회성능은 처리조건에 따라 향상되는 경우도 있고 저하되는 경우도 있음입력, 수정, 삭제 성능은 일반적으로 향상제1정규형모든 속성은 반드시 하나의 값만 가
트랜잭션은 작업의 완전성을 보장해준다.논리적인 작업 셋을 모두 완벽하게 처리하거나 또는 처리하지 못할 경우 원 상태로 복구해서 작업의 일부만 적용되는 현상이 발생하지 않게 만들어주는 기능이다.원자성(Atomicity) : 트랜잭션에 해당하는 작업 내용이 모두 반영되거나