일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 친절한SQL튜닝
- SQLP
- 로버트C마틴
- 조인
- 데이터모델링
- 오라클
- RAC
- 클린코드
- Oracle
- B*Tree인덱스
- table full scan
- heapq
- index fast full scan
- 리눅스
- SQL튜닝의시작
- clean code
- database
- 오라클튜닝
- leetcode215
- B*Tree
- B*Tree인덱스구조
- SQLD
- join
- 결합인덱스구조
- 리트코드215
- db
- 알고리즘
- 파이썬
- 클린 코드
- intellij
- Today
- Total
목록전체 글 (45)
개발노트
WITH절 설명 & 사용법 정의 WITH절은 오라클9 버전부터 사용되었고, 이름이 부여된 임시 서브쿼리라고 생각하면 된다. 임시 테이블을 만든다는 관점에서 보면 VIEW 와 쓰임새가 비슷하다. 그러나 차이가 있다면 VIEW 는 DROP 되지 않는 한 재사용이 가능한 Object 이지만, WITH절의 경우 실행되는 쿼리문 안에서만 재사용된다. 사용법 예시 WITH cte1 AS (SELECT a, b FROM table1), cte2 AS (SELECT c, d FROM table2) SELECT b, d FROM cte1 JOIN cte2 WHERE cte1.a = cte2.c; - 서브쿼리를 AS 뒤에 괄호에 넣고, AS 앞에 서브쿼리에 대한 이름을 붙여준다. - WITH 절로 생성된 서브쿼리는 tab..
속성 업무에서 필요한 정보인 엔터티가 가지는 항목이다 속성은 더이상 분리되지 않는 단위로, 업무에 필요한 데이터를 저장할 수 있다 인스턴스의 구성요소이고, 의미적으로 더 이상 분해되지 않는다 속성의 특징 속성은 업무에서 관리되는 정보이다 속성은 하나의 값만 가진다 주식별자에게 함수적으로 종속된다. → 기본키가 변경되면 속성의 값도 변경된다 속성의 종류 분해 여부에 따른 속성의 종류 단일 속성 하나의 의미로 구성된 것 예) 회원id, 이름 복합 속성 여러 개의 의미가 있는 것 예) 주소(시, 군, 동 등으로 분해 가능) 다중값 속성 여러개의 값을 가지는 것 다중값 속성은 엔터티로 분해된다 예) 상품 리스트 특성에 따른 속성의 종류** 기본 속성 비즈니스 프로세스에서 도출되는 본래의 속성이다 예) 회원id,..
엔터티(Entity) 엔터티는 업무에서 관리해야 하는 데이터 집합을 의미하며, 저장되고 관리되어야 하는 데이터이다. 엔터티는 개념, 사건, 장소 등의 명사이다. 엔터티의 특징 1) 유일한 식별자가 있어야 한다 2) 2개 이상의 인스턴스가 있어야 한다 3) 1개 이상의 속성을 가지고 있어야 한다 4) 다른 엔터티와 최소 1개 이상의 관계가 있어야 한다 5) 업무에서 관리되어야 하는 집합이다 엔터티의 종류 유/무형에 따른 엔터티의 종류 유형 엔터티 물리적 형태가 있다 업무에서 도출되며, 지속적으로 사용되는 엔터티이다 예) 고객, 강사, 사원 등 개념 엔터티 개념 엔터티는 물리적 형태가 없다 예) 거래소 종목, 코스닥 종목, 생명보험 상품 사건 엔터티 비즈니스 프로세스를 실행하면서 생성되는 엔터티이다 예) 주..
스키마(Schema) 컴퓨터 과학에서 데이터베이스 스키마(database schema)는 데이터베이스에서 자료의 구조, 자료의 표현 방법, 자료 간의 관계를 형식 언어로 정의한 구조이다. 데이터베이스 관리 시스템(DBMS)이 주어진 설정에 따라 데이터베이스 스키마를 생성하며, 데이터베이스 사용자가 자료를 저장, 조회, 삭제, 변경할 때 DBMS는 자신이 생선한 데이터베이스 스키마를 참조하여 명령을 수행한다. 3층 스키마(3 level schema) 사용자, 설계자, 개발자가 데이터베이스를 보는 관점에 따라 데이터베이스를 기술하고 이들간의 관계를 정의한 ANSI 표준이다. 데이터의 독립성을 확보하기 위한 방법 중 하나이다. 데이터 독립성의 확보는 데이터 복잡도 증가, 데이터 중복 제거, 사용자 요구사항 변..
ERD(Entity Relationship Diagram) 엔터티와 엔터티 간의 관계를 정의하는 모델링 방법이다. 1976년 피터첸(Peter Chen)이 만든 표기법으로, 사실상 데이터 모델링의 표준으로 사용되고 있다. ERD 작성 절차 1) 엔터티를 도출하고 그린다 2) 엔터티를 배치한다 - 중요한 언터티는 왼쪽 상단에 배치 3) 엔터티 간의 관계를 설정한다 4) 관계명(행위 or 존재)을 서술한다 5) 관계 참여도(관계수)를 표현한다 6) 관계의 필수 여부를 표현한다
데이터 모델링의 주요 특징 특징 설명 추상화(Abstraction) 현실세계를 간략하게 표현 단순화(Simplification) 누구나 쉽게 이해할 수 있도록 표현 명확성(Clarity) 명확하게 의미가 해석되어야 하고 한 가지 의미를 가짐 데이터 모델링 단계 단계 설명 개념적 모델링 전사적 관점에서 기업의 데이터를 모델링한다 추상화 수준이 가장 높은 모델링이다 업무 측면에서 모델링하며, 기술적인 용어는 가급적 사용하지 않는다 엔티티와 속성을 도출하고 개념적 ERD를 작성한다 논리적 모델링 개념적 모델링을 논리적 모델링으로 변환하는 작업이다 식별자를 도축하고 필요한 모든 릴레이션을 정의한다 정규화를 통해서 재사용성을 높이고, 데이터 모델의 독립성을 확보한다 물리적 모델링 구축할 데이터베이스 관리 시스템에..
커서(Cursor) Cursor 는 Oracle 서버에서 할당한 전용 메모리 영역에 대한 포인터이다. 질의의 결과로 얻어진 여러 행이 저장된 메모리상의 위치(포인터) 값이다. 커서는 Select 문의 결과 집합을 처리할 때 사용한다. 암시적 커서(Implicit Cursor) 오라클 DB에서 실행되는 모든 SQL문장은 암시적인 커서가 생성되며, 커서 속성을 사용할 수 있다. 모든 DML과 PL/SQL SELECT 문에 대해 선언된다. 암시적인 커서는 오라클이나 PL/SQL 실행 매커니즘에 의해 처리되는 SQL 문장이 처리되는 곳에 대한 익명의 주소이다. Oracle 서버에서 SQL 문을 처리하기 위해 내부적으로 생성/관리한다. 암시적 커서는 SQL문이 실행되는 순간 자동으로 Open 과 Close 를 실..
원인: 하나의 트랜잭션 내에서 parallel 또는 append 힌트가 적용된 DML 수행 후 commit, rollback 을 하지 않고 객체에 접근할 때 발생 해결: 트랜잭션 단위를 쪼개야 한다. parallel 또는 append 힌트가 적요된 DML 수행 후 바로 Commit 이나 Rollback 수행 oerr ora 12838 12838, 00000, “cannot read/modify an object after modifying it in parallel” // *Cause: Within the same transaction, an attempt was made to add read or // modification statements on a table after it had been mod..