일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- ID중복
- first-of-child
- Linux세팅
- 메모리스트림
- 동기화
- include 지시자
- interrupt()
- ThreadGroup()
- 리눅스세팅
- Daemon()
- StringWriter
- Linux셋팅
- include액션태그
- interrupted()
- include지시자
- 스레드그룸
- 아이디중복
- InputDialog
- 상관 서브 쿼리
- 표현 언어
- String char[] 형변환
- MemoryStream
- StringReader
- char[] String 형변환
- 상관서브쿼리
- 리눅스셋팅
- ObjectInputStream
- first-child
- sleep()메소드
- isinterrupted()
- Today
- Total
목록Oracle (41)
다연이네
***** 동적 SQL ***** 프로그램 실행하고 난 후에 결정이 나는 것 1. 필요성 ㄱ. 컴파일 시에 SQL 문장이 확정되지 않은 경우 where 조건절, select 항목이 동적으로 변하는 경우 ㄴ. PL/SQL 블록 상에서 DDL문을 실행해야 하는 경우 DDL (create, alter, drop, truncate문) ㄷ. PL/SQL 블록 상에서 alter system/session 명령어를 실행해야 하는 경우 2. 동적 SQL을 사용하는 2가지 방법 ㄱ. 원시 동적 SQL (Native Dynamic SQL :NDS) ***** ㄴ. DBMS_SQL 패키지 사용 (잘x) 3. EXECUTE 프로시저명; -- 프로시저 실행 execute immediate 동적SQL문 [into 변수...] [..
transaction - 트랜잭션(Transaction)이란 일의 처리가 완료되지 않은 중간 과정을 취소하여 일의 시작 전 단계로 되돌리는 기능이다. - 즉, 결과가 도출되기까지의 중간 단계에서 문제가 발생하였을 경우 모든 중간 과정을 무효화하여 작업의 처음 시작 전 단계로 되돌리는 것이라 할 수 있다. - 일의 완료를 알리는 commit과 일의 취소를 알리는 rollback이 쓰인다. 예) 계좌 이체 1) A UPDATE 2) B UPDATE 완전히 다 되던지 완전히 안되던지 --userenv : 사용자환경 select userenv('sessionid') from dual; 스캇 계정의 다른 데이터베이스를 접속하면 다른 숫자가 뜸 select ename,job from emp where ename='..
create table tbl_job_test ( seq number ,insert_date date ); create or replace procedure up_jobtest is vseq number; begin select nvl( max(seq), 0) +1 into vseq from tbl_job_test; insert into tbl_job_test values (vseq, sysdate); commit; exception when others then rollback; dbms_output.put_line('에러 발생, 롤백 처리됨'); end; select * from tbl_job_test; 계속 만들어진다. 1) 잡 등록 - dbms_job.summit declare v_job_no n..
PL/SQL의 패키지 관계되는 타입, 프로그램 객체, 서브프로그램(procedure, function)을 논리적으로 묶어놓은 것 - 패키지 명세 부분 CREATE OR REPLACE PACKAGE employee_pkg as --저장 프로시저... procedure print_ename(p_empno number); procedure print_sal(p_empno number); end employee_pkg; - 예시 CREATE OR REPLACE PACKAGE BODY employee_pkg as procedure print_ename ( p_empno number ) is l_ename emp.ename%type; begin select ename into l_ename from emp wher..
1. 상품, 입고, 판매 테이블 생성 CREATE TABLE 상품 ( 상품코드 VARCHAR2(6) NOT NULL PRIMARY KEY ,상품명 VARCHAR2(30) NOT NULL ,제조사 VARCHAR2(30) NOT NULL ,소비자가격 NUMBER ,재고수량 NUMBER DEFAULT 0 ); CREATE TABLE 입고 ( 입고번호 NUMBER PRIMARY KEY ,상품코드 VARCHAR2(6) NOT NULL CONSTRAINT FK_ibgo_no REFERENCES 상품(상품코드) ,입고일자 DATE ,입고수량 NUMBER ,입고단가 NUMBER ); CREATE TABLE 판매 ( 판매번호 NUMBER PRIMARY KEY ,상품코드 VARCHAR2(6) NOT NULL CONSTRA..
1. 성적테이블(학번, 이름, 국, 영, 수), 점수테이블(학번, 총점, 평균, 등수) 만들기 create table t_score ( hak varchar2(10) primary key ,name varchar2(20) ,kor number(3) ,eng number(3) ,mat number(3) ); create table t_grade ( hak varchar2(10) primary key ,tot number(3) ,avg number(5,2) ,rank number(3) ,constraint tgrade_hak_fk foreign key(hak) references t_score(hak) ); 2. t_score(h,n,k,e,g) insert가 발생하면 자동으로 t_grade(총,평) ins..
trigger란 어떤 작업전, 또는 작업 후 trigger에 정의한 로직을 실행시키는 PL/SQL 블럭이다. 상품구매 -> 회원테이블의 누적 포인트 증가 A 10 50 -> 60 【형식】 CREATE [OR REPLACE] TRIGGER 트리거명 [BEFORE ? AFTER] trigger_event ON 테이블명 [FOR EACH ROW [WHEN TRIGGER 조건]] --행 트리거임을 알림 :행마다 반복해서 트리거 실행 (김씨 모두 삭제 : 5명이라면 5번 수행) DECLARE --1번만 트리거가 발생하면 문장 트리거 선언문 BEGIN PL/SQL 코드 END; create table tbl_trigger01( id number primary key ,name varchar2(20) ); creat..
NO_DATA_FOUND ORA-01403 SQL문에 의한 검색조건을 만족하는 결과가 전혀 없는 조건의 경우 NOT_LOGGED_ON ORA-01012 데이터베이스에 연결되지 않은 상태에서 SQL문 실행하려는 경우 TOO_MANY_ROWS ORA-01422 SQL문의 실행결과가 여러 개의 행을 반환하는 경우, 스칼라 변수에 저장하려고 할 때 발생 VALUE_ERROR ORA-06502 PL/SQL 블럭 내에 정의된 변수의 길이보다 큰 값을 저장하는 경우 ZERO_DEVIDE ORA-01476 SQL문의 실행에서 컬럼의 값을 0으로 나누는 경우에 발생 INVALID_CURSOR ORA-01001 잘못 선언된 커서에 대해 연산이 발생하는 경우 DUP_VAL_ON_INDEX ORA-00001 이미 입력되어 있..