목록SQL (31)
나의 개발일지
SQL 문 작성의 규칙과 지침 1. SQL 문은 대소문자를 구분하지 않음 키워드는 대문자로 입력하고 테이블 이름, 열 등은 소문자로 입력하는 것이 일반적 2. SQL 문은 하나 이상의 줄에 입력할 수 있으며 종료문자(;)를 입력하여 명령문을 완료하고 실행 3. 키워드는 줄간 나눠 쓰거나 약어로 쓸 수 없음 4. 절은 읽기 쉽고 편집하기 쉽도록 서로 다른 줄에 쓰도록 권장 5. 좀 더 읽기 쉬운 SQL 문을 작성하기 위해 들여쓰기를 사용 SELECT 표시할 열을 지정하기 위한 SELECT 절 데이터가 저장된 테이블을 지정하는 FROM 절 모든 열 선택 SELECT 뒤에 *을 사용하여 테이블에 있는 데이터의 모든 열을 표시 특정 열의 선택 열 이름을 쉼표로 구분하여 지정 SELECT 절에 출력 결과로 표시할..
트랜잭션 Data를 처리하는 하나의 논리적 단위 트랜잭션의 4가지 특징, ACID Atomicity (원자성) - 트랜잭션의 작업이 부분적으로 실행되거나 중단되지 않는 것을 보장 Consistency (일관성) - 트랜잭션이 성공적으로 완료되면 일관적인 Database 상태를 유지 Isolation (격리성) - 트랜잭션 수행 시 다른 트랜잭션의 작업이 끼어들지 못하도록 보장 Durability (지속성) - 트랜잭션이 성공적으로 수행되면 영원히 반영 동시성 제어 (Concurrency Control) 동시에 실행되는 트랜잭션 수를 최대화하면서도 입력, 수정, 삭제, 검색 시 데이터의 무결성이 유지되도록 하는 것 동시성 제어가 어려운 이유는 동시성과 일관성이 반비례 관계이기 때문 동시성을 높이려고 Loc..
SQL 명령어 분류 데이터 정의어 : DDL (Data Definition Language) 데이터베이스를 정의하는 언어로 생성, 수정, 삭제하는 역할 종류 역할 CREATE - 데이터베이스, 테이블을 생성하는 역할 ALTER - 테이블을 수정하는 역할 DROP - 데이터베이스, 테이블을 삭제하는 역할 TRUNCATE - 테이블을 초기화 시키는 역할 데이터 조작어 : DML (Data Manipulation Language) 데이터베이스에 입력된 레코드를 조회, 수정, 삭제하는 등의 역할 종류 역할 SELECT - 데이터를 조회하는 역할 INSERT - 데이터를 삽입하는 역할 UPDATE - 데이터를 수정하는 역할 DELETE - 데이터를 삭제하는 역할 데이터 제어어 : DCL (Data Control ..
서버 기동 단계shutdown → nomount → mount → open복구 절차를 이해하기 위해 중요한 내용 Shutdown- 오라클 서버가 완전히 종료된 상태 - Database와 Instance가 둘 다 종료된 상태Nomount- Instance가 구성되는 단계 - Parameter file을 필요로 함 - SGA를 설정된 크기로 할당하고 Background Process를 생성 - alert.log file, Trace file (추적 파일)을 오픈 - 작업 내용 : Database 생성, Control file 재생성Mount- Instance와 Database를 매핑하는 단계 - Control file을 필요로 함 - Data file과 Redo Log file의 상태를 확인 (DB name..
SQL문 실행 과정 Soft Parsing : Library Cache에 이전에 실행했던 쿼리가 있는 경우 실행 Hard Parsing : Library Cache에 이전에 실행했던 쿼리가 없는 경우 실행 Parsing Syntax Check (문법 검사) - SQL문의 철자 및 문법에 이상이 없는지를 확인 Semantic Check (오브젝트, 권한 검사) - SQL문에 사용된 테이블 이름, 컬럼 등이 정확한지 검사 - SQL문을 사용하는 사용자가 해당 권한이 충분한지 검사 Shared pool Check (Library Cache 확인) - Library Cache에 실행 계획이 있는지 확인 - 있으면 Soft Parsing - 없으면 Hard Parsing Soft Parsing Execution ..
논리적 구조 / 물리적 구조 데이터의 효과적인 저장, 관리를 하기 위해서 논리적 / 물리적 구조에 대한 이해가 필요 Database 논리적 구조인 Tablespace가 여러 개 모여서 테이터베이스를 구성 Tablespace / Data File Tablespace : 하나의 Database를 구성하는 여러 개의 논리적 구조 Tablespace는 기본적으로 System, Undo, Temp Tablespace가 생성 사용자에 의해 추가적으로 여러개의 TBS 생성 가능 System TBS Data Dictionary 테이블들이 저장되는 논리적 구조 Data Dictionary : DB내에 생성되어 있는 모든 객체들에 대한 정보, DB의 현재 상태를 저장 Undo TBS DML(Insert, Update, D..
오라클 데이터베이스 구조 인스턴스 : 메모리 안에 만들어지는 오라클 시스템의 논리적인 구조 데이터베이스 : 하드 드라이브 안에 만들어지는 오라클 시스템의 물리적인 구조 인스턴스, 데이터베이스는 동적으로 연결되어 있다. Instance SGA (System Grobal Area) 모든 사용자가 공유 가능하여 사용 Shared Pool Library Cache - 모든 SQL 문장, 문장의 실행계획이 저장된 공간 Data Dictionary Cache - 최근에 사용된 DB 정의 정보가 저장된 공간 - 정의 정보 : file, object, 권한, 제약조건 등 - 구문 분석이나 실행계획을 세울 때 사용하는 Dictionary들이 Cache 된 공간 Database Buffer Cache - 데이터의 조회와 ..