프로시저 (procedure) 와 패키지 (package) - 프로그램 유지 보수와 실행을 보다 쉽게 하기 위해서 프로그램 코드를 논리적으로 구성한 것. - 1개 패키지 내에 여러개의 프로시저가 존재한다. 스토어드 프로시저 (stored procedure) - 데이터베이스 내에 컴파일되어 저장된 프로시저. - 데이터베이스에 저장된 프로시저는 오브젝트로 관리된다. 프로시저를 사용하는 이유 - 특정 문제나 작업을 해결하기 위해서 사용한다. - 특정 기능을 담당하는 모듈(module) 단위로 되어 있다. - 재사용이 가능하다. - 스토어드 프로시저를 통해서만 데이터를 액세스할 수 있어 보안이 향상된다. - 프로시저는 공유된 메모리 자원을 이용한다. 프로시저와 함수 - 둘은 출력의 형식이 다르다. - 프로시저 ..
패키지 - 서로 관련된 스키마 오브젝트들을 묶어 캡슐화 한 것. - 컴파일되어 스키마 오브젝트로 데이터딕셔너리에 저장된다. - 비슷한 작업을 수행하는 프로시저, 함수 등을 함께 묶어 사용한다. - 패키지 자체는 호출해도 사용하지 못한다. 내부의 특정 서브 프로그램(프로시저,함수 등)을 호출해야 한다. - "패키지.서브프로그램" 형식으로 호출한다. - 패키지 구성 : 서브 프로그램 명세(Specification) + 서브 프로그램 본문(Body) - 패키지 명세가 바뀌면 그 패키지를 참조하는 모든 스토어드 서브 프로그램을 다시 컴파일해야 한다. - 패키지 본문은 바뀌어도 컴파일이 필요없다. 패키지를 사용하는 이유 - 보다 효율적인 모듈 단위로 구성하여 이해하기 쉽다. - 패키지의 public 변수와 커서는..
CLOB 자료형 타입 사이즈가 큰 데이터를 외부 파일로 저장하기 위한 데이터 타입 문자열 데이터를 DB 외부에 저장하기 위한 타입 CLOB 데이터의 최대 길이는 외부 저장소에서 생성 가능한 파일 크기 CLOB 타입은 SQL문에서 문자열 타입으로 입출력값을 표현함 CHAR(n), VARCHAR(n), NCHAR(n), NCHAR VARYING(n) 타입과 호환됨 명시적 타입 변환만 허용되며, 데이터 길이가 서로 다른 경우 최대 길이가 작은 타입에 맞춰 절삭(truncate)됨 CLOB 타입 값을 문자열 값으로 변환하는 경우, 변환된 데이터는 최대 1GB를 넘을 수 없다. 반대로 문자열을 CLOB 타입으로 변환하는 경우, 변환된 데이터는 CLOB 저장소에서 제공하는 최대 파일 크기를 넘을 수 없다. "문자형..

Session -> new Connection 으로 해당되는 User 계정으로 접속할 수 있음 TNS 방식 TNS 방식은 Oracle 데이터베이스에 접속하기 위한 정보(IP, Port, Service Name)를 별칭(Alias)와 함께 Oracle 클라이언트의 설정 파일 중에 하나인 TNSNames.ora 파일에 등록하고 실제 Oracle 데이터베이스에 접속할 때는 [그림 1]과 같이 이 별칭만 입력해서 접속함TNS 방식은 TNSNames.ora 파일에 DB접속정보와 별칭을 한번만 등록해 놓으면 이후에는 이 별칭만으로 쉽게 DB 접속 가능 여러 Oracle 데이터베이스에 접속해야 하는 환경에서도 편리하게 사용할 수 있음 Direct 방식 Direct 방식은 Oracle 데이터베이스에 접속하기 위한 정보..
저장 프로시저 , 패키지, 트리거, 함수 프로시저나 함수는 myBatis에서 동적쿼리로 대신 가능. 트리거는 이벤트를 줘서 특정 테이블에 인서트가 된다면,업데이트가 된다면과 같은 조건을 가지고 작업함 => 트리거에 대해 공부해야함 프로시저를 한데 묶어주는 것이 패키지 특정 테이블의 데이터에 변경이 되었을 때, 자동으로 수행되는 트리거 저장 프로시저 자주 사용되는 쿼리문을 모듈화시켜서 필요할 때마다 호출하여 사용하는 것 SET SERVEROUTPUT ON --결과를 보기 위한 설정 create or replace procedure EMPOUTProc --이미 프로시저가 있다면, 수정(REPLACE)함 IS vemp emp%rowtype; --변수 선언 cursor c1 --쿼리문의 실행결과를 c1에 저장 ..

자바에서는 JDBC API를 이용해서 데이터 베이스 프로그래밍을 하게 된다. 웹 프로그래밍을 하는데 있어 최소한 알아야 하는 JDBC API 사용법을 익혀볼 것이다. 교재에서는 MySQL로 되어 있어서, 오늘 Oracle로 바꾸면서 작업할 것이다! 데이터베이스 & DBMS * 데이터베이스(database) : 빠른 탐색과 검색을 위해 조직된 데이터의 집합체 * DBMS(Database Management System) : Oracle XE 11g – 데이터베이스를 관리하기 위한 시스템 – 주요 기능 데이터의 추가/조회/변경/삭제 : 프로그래머가 잘해야 하는 것 데이터의 무결성(integrity) 유지 트랜잭션 관리 데이터의 백업 및 복원 : 프로그래머X, 데이터관리자O 데이터 보안 : 프로그래머X , 데..
14. 서브 쿼리 두 개 이상의 테이블 정보가 필요한 경우 서브 쿼리를 사용 서브 쿼리의 기본 개념 서브 쿼리는 하나의 SELECT 문장의 절 안에 포함된 또 하나의 SELECT 문장 메인 쿼리 : 서브 쿼리를 포함하고 있는 쿼리문 서브 쿼리 : 메인 쿼리에 포함된 또 하나의 쿼리 서브 쿼리는 비교 연산자의 오른쪽에 기술해야함 & 반드시 괄호로 둘러싸여야 함 서브 쿼리는 메인 쿼리가 실행되기 전에 한 번만 실행됨 >SCOTT의 부서 번호 출력 : 부서명을 알 수 있음 SELECT DEPTNO FROM EMP WHERE ENAME='SCOTT'; >부서 번호 20 : 부서명 출력 SELECT DNAME FROM DEPT WHERE DEPTNO = 20 >서브 쿼리로 변경하기 SELECT DNAME FROM..
- Total
- Today
- Yesterday
- 파이썬
- python
- 요소선택
- 문자열함수
- Arrays 클래스
- 스레드 스케줄링
- FALSE
- 기본 API 클래스
- 포장 클래스
- StringTokenizer 클래스
- 자료형
- Date 클래스
- Math 클래스
- Pattern 클래스
- IndexError
- 역반복문
- StringBuffer 클래스
- 순환할당
- not_in
- 딕셔너리
- StringBuilder 클래스
- 함수
- java.time.package
- Random 클래스
- Objects 클래스
- Calendar 클래스
- 리스트
- 프로그램
- 리스트연산자
- Format 클래스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |