목록til/Oracle (14)
min's devlog

CREATE TABLE tblUser ( id varchar2(30) PRIMARY KEY,--아이디(pk) pw varchar2(30) NOT NULL,--암호 name varchar2(30) NOT NULL,--이름 lv char(1) NOT NULL,--등급(1. 일반회원, 2.관리자) pic varchar2(100) DEFAULT 'pic.png' NOT NULL, --회원 사진 regdate DATE DEFAULT sysdate NOT NULL-- 가입날짜 ); INSERT INTO tblUser (id, pw, name, lv, pic, regdate) values('Kim', '0000', '김설탕', '1', DEFAULT, default); INSERT INTO tblUser (id, p..
요구사항 회원 테이블과 게시판 테이블을 만들어 포인트 제도를 적용시킨다. 회원이 글을 작성하면 포인트를 100점 얻고, 글을 삭제하면 포인트를 50점 잃는다. > 회원은 글을 쓰거나 삭제할 수 있고, 포인트를 누적시킬 수 있다. 이를 ANSI-SQL, 프로시저, 트리거로 작성하며 비교해본다. create table tblUser ( id varchar2(30) primary key, point number default 10000 not null ); create table tblBoard ( seq number primary key, subject varchar2(1000) not null, id varchar2(30) not null references tblUser(id) ); create sequ..
○ 목차 실명 프로시저(저장 프로시저) sql의 처리 순서 프로시저 생성과 호출 예 실명 프로시저 - 프로시저는 익명 프로시저와 실명 프로시저로 나눌 수 있다. - 익명 프로시저는 1회용이지만 실명프로시저는 재사용할 수 있고 오라클에 저장된다. - 저장 프로시저(Stored Procedure) 라고도 한다. 1. 저장 프로시저, Stored Procedure - 매개변수 구성 / 반환값 구성 > 자유 - 저장 프로시저는 ANSI-SQL에서는 사용이 불가능하지만 함수는 가능하다. - 반환값을 돌려주는 방식의 차이 > 프로시저와 함수는 사용하는 장소가 다르다. 2. 저장 함수, Stored Function - 매개변수 필수 / 반환값 필수 > 고정 - 저장 함수는 주로 ANSI-SQL의 반복되는 일을 줄이기..
프로시저?(Procedure) - 메소드, 함수 등.. 순서가 있는 명령어의 집합 - PL/SQL 명령어는 반드시 프로시저 내에서만 작성이 가능하고, 동작한다. 프로시저의 반복문 PL/SQL 에서도 다른언어와 같이 반복문을 지원한다. 프로시저의 반복문으로는 loop, for loop, while loop를 사용한다. 1. loop - 단순 반복 2. for loop - 횟수 반복(자바 for) - loop 기반 3. while loop - 조건 반복(자바 while) - loop 기반 loop문 -- 사용법 LOOP 처리문; EXIT[조건]; END LOOP; -- 데이터 1000건을 추가하는 예제 declare vnum number := 1; begin loop insert into tblLoop va..
ANSI SQL DBMS들에서 각기 다른 SQL를 사용하므로, 미국 표준 협회(American National Standards Institute)가 공통적으로 사용할 수 있도록 표준 SQL문을 정립 시켜 놓은 것 - 표준 SQL문이기 때문에 DBMS의 종류의 제약을 받지 않는다. 따라서 대부분의 DBMS에서 사용할 수 있다. - join문과 where문의 분리로 일반 쿼리문보다 가독성이 좋다. 예시 -- 같은 결과 값을 출력 SELECT a.name, b.name FROM MASTER a, CLIENT b WHERE a.date = b.date -- ANSI SELECT a.name, b.name FROM MASTER a JOIN CLIENT b ON a.date = b.date OUTER JOIN -..