💕IT 공부하기/데이터베이스 27

SQL의 데이터베이스 갱신의 세가지 명령어

오라클의 SQL의 데이터 조작어에는 데이터베이스를 갱신하는 세 가지 명령이 있습니다. INSERT문은 릴레이션에 새로운 투플을 삽입하고, DELETE문은 릴레이션에서 기존의 투플을 삭제하며, UPDATE문은 기존의 투플의 애트리뷰트 값들을 수정합니다. 01. INSERT문에 대하여 INSERT문은 기존의 릴레이션에 투플을 추가합니다. 참조되는 릴레이션에 투플이 추가되는 경우에는 참조 무결성 제약조건의 위배가 발생하지 않으나 참조하는 릴레이션에 투플이 추가되는 경우에는 참조 무결성 제약조건을 위배할 수 있습니다. INSERT문은 릴레이션에 한 번에 한 투플씩 추가하는 것과 한 번에 여러 개의 투플들을 추가할 수 있는 것으로 구분합니다. 한 번에 한 투플씩 추가하는 INSERT문의 구문은 다음과 같습니다. ..

SQL의 SELECT문에 대하여(3)

03. SELECT문의 여러 가지 검색과 연산 ► 범위를 사용한 검색 원하는 투플들의 조건을 명시하기 위해서 WHERE절에 범위를 나타내는 연산자인 BETWEEN을 사용할 수 있습니다. BETWEEN의 장점은 SQL문의 WHERE절을 좀 더 읽기 쉽게 만들어준다는 것입니다. ► 리스트를 사용한 검색 IN은 리스트 내의 값과 비교합니다. [IN]의 부정은 [NOT IN]입니다. 다음의 WHERE절은 DNO의 값이 (1,2,3)에 속하는지를 검사합니다. WHERE DNO IN (1,2,3) 따라서 이 WHERE절은 OR를 사용하여 다음과 같이 표현할 수 있습니다. IN을 사용하면 다수의 OR을 사용할 필요가 없습니다. WHERE DNO = 1 OR DNO = 2 OR DNO = 3 ❶ IN Q. 1번 부서나..

SQL의 SELECT문에 대하여(2)

03. SELECT문의 여러 가지 검색과 연산 ► 별칭(alias) 서로 다른 릴레이션에 동일한 이름을 가진 애트리뷰트가 속해 있을 때, 애트리뷰트의 이름을 구분하는 한 가지 방법은 애트리뷰트 이름 앞에 릴레이션의 이름을 붙이는 것입니다. EMPLOYEE.DNO 또 다른 방법은 투플 변수(tuple variable)를 사용하는 것입니다. SQL에서 투플 변수는 한 릴레이션에 연관됩니다. 투플 변수는 FROM절에서 릴레이션의 이름 다음에 AS(생략 가능)와 함께 명시됩니다. 투플 변수를 별칭이라고도 부르며, 아래와 같이 표현합니다. EMPLOYEE릴레이션을 E, DEPARTMENT릴레이션을 D로 표현합니다. FROM EMPLOYEE AS E, DEPARTMENT AS D 투플 변수는 편리성과 질의의 이해도..

SQL의 SELECT문에 대하여(1)

01. SELECT문이란? 관계 데이터베이스에서 정보를 검색하는 SQL문은 SELECT문입니다. 이 SELECT문은 관계 대수의 실렉션과는 의미가 완전히 다릅니다. SQL의 SELECT문은 관계 대수의 실렉션, 프로젝션, 조인, 카티션 곱 등을 결합한 것입니다. SELECT문은 관계 데이터베이스에서 가장 잘 사용됩니다. 질의를 작성할 때 가장 고려해야 할 것은 ① 어떤 애트리뷰트들을 보고자 하는가, ② 이 애트리뷰트들이 어떤 릴레이션들에 속해 있는가, ③ 다수의 릴레이션이 사용될 때는 어떻게 릴레이션들이 조인되는가 등입니다. EMPNO EMPNAME TITLE MANAGER SALARY DNO 2106 김창섭 대리 1033 2500000 2 3426 박영권 과장 4377 3000000 1 3011 이수민..

SQL과 데이터 정의어와 무결성 제약조건이란?

01. SQL개요 왜 데이터베이스 환경에서는 질의어를 필요로 할까요? 복잡한 질의를 자연어로 표현하면 질의가 정확하게 표현되었는지 입증하기 어렵기 때문에 좀 더 구조적인 질의어가 필요합니다. 이상적으로는 사용자가 데이터베이스 질의어를 사용하여 데이터베이스와 릴레이션의 구조를 정의하고, 릴레이션에 투플을 삽입, 삭제, 수정하고, 간단한 질의는 물론이고 복잡한 질의를 표현할 수 있어야 합니다. 표준 언어를 사용하면 직원에 대한 교육 비용이 절감되고, 생산성이 높아지며, 응용 프로그램의 이식성이 향상되어, 특정 DBMS에 대한 의존도가 줄어들고, DBMS 간의 통신이 원활해집니다. 버전 특징 SEQUEL Structured English Query Language의 약어. System R 프로젝트에서 처음으로..