데이터베이스 9

데이터베이스_K_Digital_chapter07

DML(Data Manipulation Langague ) - 데이터 조작어 데이터베이스의 테이블에 들어있는 데이터를 조회, 변형(데이터 삽입, 수정, 삭제)의 명령어들을 의미한다. insert : 테이블에 새로운 레코드 추가 시 사용되는 명령어 update : 테이블에 기존 레코드 변경 시 사용되는 명령어 delete : 테이블에 기존 레코드 제거 시 사용되는 명령어 merge : 두개의 테이블의 내용 병합 시 사용되는 명령어 Insert 레코드를 테이블에 추가하는 명령어이다. 표기법 : insert into 테이블명(컬럼명1, 컬럼명2,...) values(값1, 값2,...) 컬럼명 부분은 생략 가능하다. 대신 모든 컬럼에 데이터를 추가해야한다. 컬럼명을 기술해야 하는 경우 모든 컬럼에 값을 설정하..

데이터베이스 2022.08.19

데이터베이스_K_Digital_chapter05

하나의 테이블에 원하는 데이터가 모두 있다면 좋겠지만, 두 개의 테이블을 엮어야 원하는 결과가 나오는 경우도 많다. 이때, 조인을 사용하면 두 개의 테이블을 엮어 원하는 데이터를 추출할 수 있다. chapter04에서 join의 사용법과 inner join(내부 조인)을 배웠었다. 이번에는 outer join(외부 조인)과 self join , 서브쿼리에 대해서 배워볼것이다 outer join(외부 조인) outer join은 한쪽에만 데이터가 있어도 결과가 나온다. 즉, 한 테이블에 null값이라도 데이터를 추출한다. outer join은 크게 left outer join, right outer join, full outer join으로 나눌 수 있다. left outer join : 왼쪽 테이블의 모..

데이터베이스 2022.08.18

데이터베이스_K_Digital_chapter04

그룹함수 그룹함수는 복수행 함수라고도 하며, 여러행에 대한 정보를 조회하는 함수이다. count() : 레코드 건수 null값을 제외한 레코드의 건수를 카운트하는 함수이다. 표기는 다음과 같다. count(컬럼) select count(*) as "전체인원수", count(bonus) as "보너스" from professor; 위 코드는 professor 테이블에서 교수 전체 인원수와 교수 중 보너스를 받은 교수의 인원수를 조회하는 코드이다. 이 때, 보너스 컬럼값이 null이면 counting에서 빠지기에 전체 인원수에서 보너스가 null값인 교수를 제한것이 count(bonus)가 될 것이다. group by : 그룹함수 처리명령어 group by함수는 컬럼의 데이터를 기준으로 레코드를 그룹화한다...

데이터베이스 2022.08.17

데이터베이스_K_Digital_chapter03

숫자관련 함수 round함수 : 반올림 함수 Round함수는 특정 소수점을 반올림하고 나머지는 버리는 함수이다. 표기는 다음과 같다. round(컬럼||숫자, 표시되는 소수점이하 자리수) select round(12.5123) r1,round(12.5123,0) r2, round(12.5123,1)r3, round(12.5123,2) r4, round(12.5123,-1) r5 from dual; --R1 : 13 , R2 : 13, R3 : 12.5 , R4 : 12.51, R5 : 10 trunc함수 : 버림함수 trunc함수는 특정 소수점까지 절사하는 함수이다. 표기는 다음과 같다. trunc(컬럼||숫자, 표시되는 소숫점이하 자리수) select trunc(12.5123) r1,trunc(12.5..

데이터베이스 2022.08.16

데이터베이스_chapter01_데이터베이스 시스템

데이터 베이스는 조직체의 응용 시스템이 공유해서 사용하는 운영 데이터(operational data)들이 구조적으로 통합된 모임이다. 데이터베이스의 구조는 사용되는 데이터 모델에 의해 결정된다. 이러한 데이터베이스는 다음과 같은 특징을 갖고 있다. 데이터베이스는 데이터의 대규모 저장소로서, 여러 부서에 속하는 여러 사용자에 의해 동시에 사용된다. 모든 데이터가 중복을 최소화하면서 통합된다. 데이터베이스는 한 조직체의 운영 데이터뿐만 아니라 그 데이터에 관한 설명(데이터베이스 스키마 또는 메타데이터)까지 포함한다. 프로그램과 데이터 간의 독립성이 제공된다. 효율적으로 접근이 가능하고 질의를 할 수 있다. 데이터베이스 시스템 데이터베이스 시스템은 데이터베이스, 사용자, 응용프로그램, DBMS, 하드웨어로 구..

데이터베이스 2022.08.12

데이터베이스_10.정규화

정규화는 이상현상이 발생하는 릴레이션을 분해하여 이상현상을 없애는 과정이다. 그럼 이상현상은 무엇일까? 이산현상 이상현상은 릴레이션 처리 과정에서 불필요한 데이터 중복으로 인해 발생하는 부작용을 뜻한다. 종류로는 삽입, 수정, 삭제 이상으로 분류 할 수 있다. 삽입이상 불필요한 데이터를 함께 입력하지 않고서는 원하는 데이터만 입력이 불가능한 상황이다. 투플 삽입 시 특정 속성에 해당하는 값이 없어 NULL 값을 입력해야 하는 현상이다. -> NULL 값 문제 발생 수정이상 투플 수정 시 중복된 데이터의 일부만 수정되어 데이터의 불일치 문제가 일어나는 현상이다. 불일치 문제 발생 삭제이상 투플 삭제 시 같이 저장된 다른 정보까지 연쇄적으로 삭제되는 현상이다. 연쇄삭제 문제 발생 함수 종속성 함수 종속성은 ..

데이터베이스 2021.11.08

데이터베이스_05.데이터베이스 설계

데이터베이스 설계는 건축에서 지반설계와 같다. 데이터베이스 설계(지반설계)가 잘못되면 소프트웨어 설계(건물 설계)에 지장이 생긴다. 데이터베이스 설계(데이터 모델링) 현실 세계의 복잡한 개념을 단순화하고 추상화해서 데이터베이스화하는 과정 데이터베이스 생명주기 데이터베이스의 생성과 운영에 관련된 특징

데이터베이스 2021.10.19

데이터베이스_02.관계 데이터 모델과 제약조건

관계 데이터 모델의 큰 장점 바탕이 되는 데이터 구조로서 간단한 테이블을 사용하고, 중첩된 복잡한 구조가 없고 관계 데이터 모델이전의 계층 데이터 모델, 네트워크 데이터 모델이 데이터를 레코드 위주로 처리를 했던 반면에 집합 위주로 데이터를 처리하고, 고급 언어인 sQL을 제공하고, 숙련되지 않은 사용자도 쉽게 이해할 수 있고, 트랜잭쳔 관리 기능을 제공한다는 것이다. 또한 표준 데이터베이스 응용에 대해 좋은 성능을 보이고, 다른 데이터 모델에 비해 이론이 잘 정립되었다. 특히 관계 데이터베이스 설계와 효율적인 질의 처리 면에서 뛰어난 장점을 갖는다. 2.1 관계 데이터 모델의 개념 동일한 구조의 관점에서 모든 데이터를 논리적으로 구성하며 선언적인 질의어를 통한 데이터 접근을 제공한다. 응용 프로그램들은..

데이터베이스 2021.10.03

데이터베이스_01.데이터베이스 시스템

들어가기 앞서 데이터와 정보는 서로 다르다는것을 이해하고 넘어간다. 데이터는 컴퓨터 디스크와 같은 매체에 저장된 사실을 말하며, 정보는 데이터를 처리해서 사람이 이해하기에 적합한 형태로 의미 있게 만든것이다. 데이터베이스의 정의 조직체의 응용 시스템들이 공유해서 사용하는 운영 데이터(operational data)들이 구조적으로 통합된 모임이다. 데이터베이스의 구조는 사용되는 데이터 모델에 의해 결정된다. 데이터베이스가 필요한 전형적인 환경은 데이터의 양이 방대하며, 데이터가 구조적이며, 많은 사용자들이 동시에 데이터를 접근하여 검색과 갱신을 수행하는 환경이다. 조직체들은 연속적인 운영, 높은 가용성, 최신의 정확한 정보, 데이터 내에서 복잡한 상호 관련성을 유지하기 위해 데이터베이스 기술이 필요하다. ..

데이터베이스 2021.09.26