본문 바로가기

컴퓨터 지식

데이터베이스 SQL 예제 2 데이터베이스 SQL 예제 두번째 문제입니다. 'SEOUL'에서 근무하는 사원의 이름과 부서번호를 출력하시오. 이 문제에서 원하는 것은사원의 이름과 부서번호 입니다.즉 SELECT name, deptno 가 되겠죠. 그리고 어떤 테이블에서 가져올 것인가의 문제인데,사원의 이름과 부서번호는 employee 테이블에 있다고 가정하겠습니다.그럼 FROM employee 가 되겠죠. 그런데 한가지 조건이 있습니다. SEOUL 지역에서 근무하는 사원만 뽑아야 합니다.SEOUL 지역에 근무하는지는 어떻게 알 수 있을까요?그냥 알 수는 없고, 테이블을 봐야 알 수 있습니다.여기서는 편의상 dept라는 테이블에 있다고 가정하겠습니다. 조건문 WHERE에서 SEOUL 지역에 근무하는 부서번호를 모두 가져와야 하므로,SEL.. 더보기
데이터베이스 SQL 예제 1 데이터베이스에서 SQL 쿼리문을 잘 작성하는 것은 매우 중요한 일입니다.쿼리문을 효율적으로 작성하지 못하면 소스코드에서 다시 작업을 해줘야 할 수도 있는데이건 매우 비효율적인 일이기 때문입니다.그런 의미에서 오늘은 몇가지 SQL문에 대한 예제를 살펴보겠습니다. 우선 사원 테이블(employee)이 있다고 가정하겠습니다. 사원 테이블에서 급여(salary)가 2,000 이상인 사원들의 부서별(dept) 평균을 구하라.단, 부서별 평균 급여가 3,000 이상이어야 한다. 문제의 요구사항을 보면, 우선 최종적으로 구해야 하는 것은 부서별 평균 금액입니다.여기서 알 수 있는 것은 SELECT에서 선택되어야 하는 것은 부서(dept)와 급여의 평균 AVG(salary)입니다.그렇다면 이런 SELECT 문을 작성할.. 더보기
데이터베이스 트랜잭션 데이터베이스는 여러 명의 사용자가 동시에 접근해서 사용을 하더라도항상 모순된 결과가 나오지 않도록 데이터를 정확하게 유지해야 합니다.또한 만약이라도 데이터베이스에 문제가 생기게 될 경우 최대한 빨리원래 상태로 복구될 수 있어야 합니다. 데이터베이스에 대한 이러한 요구사항을 만족시키기 위한 방법이바로 트랜잭션(Transaction)입니다. 요약해서 말씀드리면 트랜잭션이란 데이터베이스를 회복시키고,병행 제어가 가능하도록 하는 것을 목표로 하고 있습니다.즉, 트랜잭션이란 하나의 작업을 수행하기 위한데이터베이스에 필요한 연산들을 모아놓은 것으로, 데이터베이스의 논리적 단위입니다.다르게 말해 트랜잭션이란 작업 수행에 필요한 SQL 문들의 모임으로 이해할 수 있습니다. 이쯤에서 하나의 예를 들어보겠습니다.트랜잭션을.. 더보기
OSI 7계층에 대해서 Network를 공부한 분이라면 OSI 7계층에 대해서 한번쯤은 들어보셨을 것입니다.오늘은 OSI 7계층이란 무엇인지 정리해보는 시간을 가지려고 하는데요. 사실 네트워크라는 것이 국제표준기구인 ISO에 표준화시킨 규칙을 따르고 있다는 것 알고 계신가요?그렇지 않으면 사람 대 사람, 나아가서는 국가 대 국가 간 통신을 할 수가 없을 것입니다.이렇게 표준화된 규칙에 대해서 비슷한 기능을 제공하는 비슷한 모듈들을분류해놓은 것이 바로 OSI 7계층입니다.풀어서는 Open System Interconnection 7 Layer 라고도 합니다. 다르게 말해서 통신 기능을 7개의 수직 계층으로 분할해서다른 계층과는 무관하게 특정 계층만이 독립적으로 기능을제공하도록 구성한 것인데요. 이렇게 구성을 한 이유는 특정 모듈.. 더보기
데이터베이스 정규화이론 - BCNF 정규형 오늘은 보이스/코드 정규형이라 불리는 BCNF 정규형에 대해서 알아보겠습니다.BCNF는 Boyce/Codd Normal Form의 약자인데요. BCNF는 제 3정규형보다 강한 정규형입니다.즉, BCNF를 만족한다면 제 3정규형도 만족하지만,제 3정규형만 만족한다면 BCNF를 만족할지는 살펴볼 필요가 있습니다. 그런데 다행히도 제 3정규형을 설명할 때 사용했던 예제는 모두BCNF를 만족하고 있습니다.그래서 오늘은 조금은 다른 예로 BCNF를 알아보려고 합니다. 오늘 살펴볼 강좌신청 릴레이션 입니다.이 릴레이션에는 제약사항이 있는데요.바로 한명의 강사는 한 개의 인터넷 강좌만 담당할 수 있다는 것입니다.참고로 고객은 여러 강좌를 선택할 수 있습니다. 이 전제조건으로 생각을 했을 때 위 릴레이션을 살펴보면,{.. 더보기