PL/SQL 이란
2022. 1. 10. 17:47
DB
PL/SQL의 특징 PL/SQL은 BLOCK 구조로 되어있고 BLOCK 내에는 DML 문장과 QUERY 문장, 그리고 절차형 언어(IF, LOOP) 등을 사용할수 있다. 특징은 저장 모듈 (STORED MODULE)을 이용해서 PL/SQL 을 데이터베이스에 저장하여 독립적으로 실행되거나 다른 프로그램으로부터 실행될 수 있는 완전한 실행 프로그램이다. ORACLE 의 저장 모듈에는 PROCEDURE, USER DEFINED FUNCTION, TRIGGER가 있다. PL/SQL 의 특징은 다음과 같다. -PL/SQL은 Block 구조로 되어있어 각 기능별 모듈화가 가능하다. -변수, 상수 등을 선언하여 SQL 문장 간 값을 교환한다. -IF,Loop 등의 절차형 언어를 사용하여 절차적인 프로그램이 가능하도록..
데이터베이스 모델링 -1
2022. 1. 7. 17:25
DB
데이터베이스 모델링 또는 데이터베이스 설계라고도 합니다. (-모델링 과목을 많이 하고 하는 만큼 실력이 늘어난다. 혹은 이해할수 있다. ) 4가지 작업으로 이루어지는 데이터베이스 모델링 1.업무파악 : 무엇을 할수 있는가 무엇을 만들건가를 파악해야한다. 화면을 보고 업무파악 혹은 고객사에서 요구하는 요구사항을 글로 읽고 파악하는 단계가 될수도 있다. 글을 읽고도 무엇이 필요한지 깨달을 필요가 있어야한다. 2.개념적 데이터 모델링 - er 다이어그램으로 어떤것들이 필요할거같은 중요 핵심들을 뽑아내서 추출하는 작업 3. 논리적 데이터모델링 -er 다이어그램을 보고 단계형 데이터베이스에 맞게끔 표로 전환하는 작업 4. 물리적 데이터 모델링 실제 표를 생성하고 만드는 작업 개념적 데이터 모델링에서는.... 개념..
SQL 사용자 권한
2022. 1. 5. 23:15
DB
권한(Privilege)은 특정 SQL 문장을 실행하기 위한 권리 입니다. 데이터베이스 관리자(DBA) 는 데이터베이스와 그 객체에 대한 엑세스를 사용자에게 부여하는 능력을 갖춘 상급 사용자입니다. 사용자는 데이터베이스에 엑세스하기 위해 시스템 권한( System Privilege)이 필요하고 데이터베이스에서 객체의 내용을 조작하기 위해 객체 권한(Object Privilege) 이 필요합니다. 사용자는 관련 관한들의 이름 있는 그룹인 Role 이나 다른 사용자에게 추가로 권한을 부여하기 위해 권한을 가질 수 있습니다. 사용자와 롤에 대해 시스템 권한과 객체 권한을 부여할 수 있습니다. 시스템 권한은 대게 데이터베이스 관리자 (DBA) 에 의해 제공됩니다. 객체 권한은 대게 객체의 소유주에 의해 제공됩니..
SQUENCE INDEX(순차 적으로 증가하는 값)
2022. 1. 5. 22:35
DB
자동적으로 유일 번호를 생성합니다. 공유 가능한 객체입니다. 주로 기본 키 값을 생성하기 위해 사용 합니다. 어플리케이션 코드를 대체합니다. 메모리에 캐쉬(Cache)되면 시퀸스 값을 엑세스 하는 효율성을 향상시킵니다. 시퀸스는 테이블의 행에 대한 시퀸스 번호를 자동적으로 생성하기 위해 사용될 수 있습니다. 시퀸스는 사용자가 생성한 데이터베이스 객체이며 여러 사용자가 공유할 수 있습니다. 시퀸스의 가장 일반적이고 전형적인 사용은 각 행을 유일하게 구분하는 기본 키값을 생성하기 위해서 입니다. 시퀸스 번호는 테이블과 관꼐없이 생성되고 저장됩니다. 그러므로 동일한 시퀸스는 여러 테이블에 대해 사용될 수 있습니다. 다음 구문은 depts테이블의 department_id 에 대해 사용되는 DEPTS_SEQ 라는..
뷰(View)
2022. 1. 5. 22:15
DB
뷰 생성, 데이터 검색, 수정, 삭제 뷰는 테이블 또는 다른 뷰를 기초로 하는 논리적 테이블입니다. 접근제어를 통한 자동 보안이 제공되므로 데이터베이스 엑세스를 제한하기 위한 사용합니다. 복잡한 질의를 쉽게 만들어주기 때문에 사용자의 데이터 관리를 간단하게 해 줍니다. 동일한 데이터의 다른 뷰를 나타낼 수 있기 때문에 동일 데이터에 대해 동시에 여러 사용자의 상이한 응용이나 요구를 지원해 줍니다. View 의 정의 하나 이상의 테이블에서 원하는 모든 데이터를 선택하여, 그들을 사용자 정의하여 나타낸 것이다. 단순뷰 - 한개의 원본테이블을 사용해서 생성 복합 뷰 - 두개 이상의 이본 테이블에 의해 생성(조인을 통해 생성된...) 뷰는 단순 뷰와 복합 뷰가 있습니다. 근본적인 차이점은 DML (삽입, 갱신,..
DML-1
2022. 1. 4. 20:21
DB
UPDATE 문장으로 기존의 행을 갱신합니다. 필요하다면 하나 이상의 행을 갱신할 수 있습니다. Update 문장을 사용하여 기존의 행을 수정할 수 있습니다. 위의 구문형식에서 -table : 테이블의 이름 - column : 테이블의 열 이름입니다. - value : 열에 대한 관련 값이나 서브쿼리입니다. -condition: 갱신할 행을 명시하고, 열 이름, 표현식, 상수, 서브쿼리 그리고 비교 연산자로 구성됩니다. 이 구문은 UPDATE 구믄을 연습하기 위해 EMPLOYEES 테이블의 임시 사본을 생성합니다. ALTER TABLE 구문은 제약조건을 추가합니다. 제약조건은 11장에서 설명합니다. 서브쿼리가 여러 개 열을 반환하는 다중 열 서브쿼리를 이용해서 UPDATE 구문을 작성한 예입니다. del..
DML(DATA MANIPULATION LANGUAGE)
2022. 1. 4. 19:37
DB
DML 문장은 다음의 경우 실행됩니다. 테이블에 새로운 행을 추가할 때 테이블에 있는 기존의 행을 변경할 때 테이블로부터 기존의 행을 제거할 때 DML(Data Manilpuation Language)은 SQL 의 핵심 부분입니다. 데이터베이스에 데이터를 추가, 갱신 또는 삭제하고자 한다면 DML 문장을 실행합니다. DML 문은 다음 3가지 구문을 포함합니다. - 새로운 행을 데이터 베이스에 추가하는 INSERT 문 - 기존 행을 수정하기 위한 UPDATE 문 - 기존 행을 삭제하기 위한 DELETE 문 DML 구문의 실행을 완전히 보장해야 할 필요가 있습니다. 이를 위해 트랜잭션이 필요합니다. 작업의 논리적인 단위 형태인 DML 문장의 모음을 트랜잭션이라고 합니다. 예를 들어 은행 데이터베이스를 고려해..
서브쿼리
2022. 1. 1. 21:33
DB
서브쿼리는 다른 select 문장의 절에 내장된 select 문장입니다. 서브쿼리를 사용하여 간단한 문장을 강력한 문장으로 만들수 있습니다. 테이블 자체의 데이터에 의존 하는 조건으로 테이블의 행을 검샐할 필요가 있을 때 서브쿼리는 아주 유용합니다. 예를 한번 보겠습니다. 다음의 SQL 절에 서브쿼리를 작성할수 있습니다. SELECT 절(스칼라 서브쿼리) FROM 절(인라인뷰) WHERE 절 HAVING 절 ORDER BY 절 INSERT 문의 VALUES 절 UPDATE 문의 SET 절 CREATE TABLE 문의 AS 절 다음은 서브쿼리르 사용할 때 지켜야할 사항들입니다. 서브쿼리는 괄호로 둘러싸야 합니다. 서브쿼리는 비교 연산자의 오른쪽에 있어야 합니다. 서브쿼리는 ORDER BY 절에 포함할 수 ..
SQL-JOIN이란?
2021. 12. 31. 17:52
DB
두개의 테이블을 서로 연관해서 조회하는것을 조인이라 부릅니다. 중요 JOIN 의 종류 INNER JOIN - 내부 조인(EQUALS JOIN) OUTER JOIN - 외부 조인 (LEFT OUTER,RIGHT OUTER, FULL OUTER) 그밖의 조인의 종류 CLOSS JOIN SELF JOIN 조인의 형태가 FROM 절에서 지정되며, 조인 조건이 ON 절 또는 USING 절에 표시됩니다. INNER JOIN - JOIN구문 앞에 INNER 를 생략할수 있습니다. ON 절을 이용하면 JOIN 이후에 논리 연산과 서브쿼리 와 같은 추가 서술 할수있습니다. USING 절을 이용하면 원하는 컬럼에 대해서만 선택적으로 INNER 조인을 할 수있습니다. JOIN ~ ON절을 반복적으로 사용하면 3개 이상 테이..
SQL - 변환 함수
2021. 12. 28. 21:21
문제풀이/백준
오라클을 상용하다 보면 데이터 타입을 변환해야 하는 경우가 생깁니다. 이럴때 사용하는 함수가 형 변환 함수입니다. 형 변환 함수의 종류(TO_NUMBER, TO_CHAR,TO_DATE) 는 다음과 같습니다. TO_CHAR 함수(TO_DATE(date,fmt)) 함수는 날짜나 숫자를 문자로 변환하기 위해서 사용합니다. 날짜 형식을 지정하기 위해서FMT(FORMAT) 를 지정하며 FMT는 단일 인용부호로 둘러싸여 있어야 합니다. 어떤 타당한 날짜 형식 요소도 포함할 수 있습니다. 종류 설명 YY 연도 표현 2자리 4자리 사용하려면 YYYY MM 월을 숫자로 표현 DD 날짜를 숫자로 표현 HH or HH12 or HH24 하루 중 시간 또는 시간(1-12) 또는 시간(0-23) MI 분 SS 초 " OF TH..