본문 바로가기

DB/SQLPLUS32

[ORACLE] 저장프로시저 이번엔 저장 프로시저에 대해서 알아 볼 것 이다. 저장 프로시저 저장 프로시저를 사용해서 어느 작업을 하는 프로시저를 작성해두면 데이터베이스에 저장되므로 나중에 필요하면 몇 번이고 불러서 실행하기만 하면 된다. ●예제 create or replace procedure h_world is l_message varchar2(100) := 'Hello world!!'; begin dbms_output.put_line(l_message); end; / exec h_world; select object_name, status from user_objects where object_name = 'H_WORLD'; select object_name, object_type from user_objects where o.. 2022. 6. 20.
[ORACLE] 트리거(Trigger) 이번엔 트리거(Trigger)에 대해서 알아 볼 것이다. 트리거(Trigger) 트리거는 사전적 의미로 '방아쇠를 당기다'인데 쿼리에서 어느 지정한 조건이 만족되면 연관된 다른 이벤트가 발생하게 한다. SQL 실행 시기를 기준으로 before 트리거( INSERT, UPDATE, DELETE 실행하기 전에 트리거 먼저 실행 됨), after 트리거( INSERT, UPDATE, DELETE 실행하고 난 후 트리거 실행 됨)가 있고, 실행 시 영향을 받는 곳을 기준으로 row 트리거(행:실행된 트리거가 row(행) 하나하나 마다 실행 됨), statement 트리거(문장:실행된 트리거가 INSERT,UPDATE,DELETE 문장에 한 번만 실행 됨)이 있다. 트리거는 트랜잭션 제어문(COMMIT, ROLL.. 2022. 6. 20.
[ORACLE] Cursor(커서) 이번엔 Cursor(커서)에 대해서 알아 볼 것이다. Cursor(커서) Cursor는 쿼리 수행으로 반환되는 여러 값을 처리할 때 사용되는데 글로벌 영역 내의 저장공간을 사용해서 사용자가 쿼리를 수행하면 결과 값을 저장 공간에 가지고 있다가 원하는 시기에 순차적으로 가져와서 처리해서 결과를 반환하는 기법이다. 즉, 커서란 특정 SQL 문장을 처리한 결과를 담고 있는 메모리 영역을 가리키는 일종의 포인터로 볼 수 있다. 대부분의 SQL문 결과 ROW는 여러 개인데 커서를 사용하면 이 ROW에 순차적으로 접근이 가능하다. 커서의 종류에는 묵시적(implicit) 커서와 명시적(explicit) 커서가 있다. 묵시적 커서는 오라클 내부에서 자동으로 생성되어 SQL문장이 실행될 때마다 자동으로 만들어져 실행되.. 2022. 6. 20.
[ORACLE] data dictionary 이번엔 data dictionary에 대해서 알아 볼 것이다. Data Dictionary 데이터 딕셔너리는 Oracle 데이터베이스에 내장된 모든 객체의 정보를 가지고 있는 파일이다. 사용자가 관리하지 않고 Oracle DBMS가 직접 관리해서 저장하고 있다. 어느 객체의 정보를 얻으려면 이 데이터 딕셔너리를 이용하면 된다. 데이터 딕셔너리는 데이베이스 생성 시 함께 만들어 지며 SYSTEM 테이블 스페이스에 Table이나 View 형태로 저장되어 있다. 데이터 딕셔너리에는 현재 데이터베이스에 접속한 사용자가 소유한 객체 정보를 가지고 있는 USER, 사용자가 접근 가능한 한 모든 스키마 정보를 가지고 있는 ALL, 데이터베이스 관리를 위한 정보를 가지고 있는 DBA 세 가지 종류가 있다. 딕셔너리에 .. 2022. 6. 20.