06.01(이클립스와 JDBC연동 - ojdbc6.jar 파일)
2020. 6. 1. 20:16
프로그래밍/JDBC
ojdbc6.jar 파일 자바 이클립스에 위치시키기 ojdbc 다운로드(오라클 설치시 jdbc파일이 저장되어 있음) > 경로 C:\oraclexe\app\oracle\product\11.2.0\server\jdbc\lib > ojdbc6.jar 파일을 연동하고 싶은 프로젝트에 lib폴더를 만들어 그 안에 복사하기 eclipse Library등록 properties > Java Build Path > Libraries > Add External JARs.... > ojdbc6.jar 선택후 Apply 연동 확인 테스트 public class DriverTest { public static void main(String[] args) { //실행했을때 에러가 안나면 등록 잘 됨 //사용하기 위해 메모리상의 ..
05.29(Trigger)
2020. 5. 29. 20:00
프로그래밍/SQL
Trigger 특정이벤트, DDL, DML문이 실행되었을때,자동적으로 어떤 처리가 일어나도록 하는 데이터 베이스 객체 1. DML Trigger --어떤테이블 추가/생성 되었을때 실행 2. DDL Trigger 3. Logon /Logoff Trigger 예제) 급여내역이 변경될때 내역이 기록되도록 처리 create or replace trigger trig_salary_log after --주 DML문 실행 전before / 실행후after 이 트리거를 작동 update on emp_test1 --특정테이블의 insert, update, delete문 실행시 trigger가 작동하도록 함 for each row --문장 레벨 트리거 : (기본값) dml문당 한번 trigger가 실행 --행 레벨 트리거..
05.28(PL/SQL)
2020. 5. 28. 20:43
프로그래밍/SQL
PL/SQL(Procedural Language Extension to SQL) 기존 SQL문에 절차적인 언어 확장판이라 할 수 있음 변수정의, 조건처리, 반복처리의 기능이 추가됨 procedure, function, job, scheduler 등의 객체에서 pl/sql문법을 사용 1. 익명블럭(anonymous block) 1회용 pl/sql. 객체로 저장된 형태가 아님 declare(선택) --선언부 : 변수/상수를 선언 begin --실행부 : 조건문, 반복문, 일반 sql문 사용 exception(선택) --예외처리부 : (자바 catch절 생각하면 됨) 예외발생시 처리구문 작성 end; / --이게 있어야 끝났다고 인지 --사원명으로 사번, 사원명, 직급명, 조회하기(익명블럭) --콘솔 출력 설..
05.27(VIEW, SEQUENCE)
2020. 5. 27. 20:34
프로그래밍/SQL
VIEW 하나 이상의 실제테이블로부터 새로운 가상 테이블을 만들어 제공함 실제테이블의 데이터를 보여줄뿐, 데이터를 가지고 있는 것은 아님 실제테이블의 데이터를 제한적으로 허용 resource 롤에 create view는 포함되지 않음(별도로 부여 받아야함) view에 대해서 DML이 제한적으로 가능하지만, 가상데이터가 포함되어 있거나, group by/그룹함수등을 이용한 경우는 불가능함 create view view_emp as select emp_id, emp_name, email, phone from emp_test1; --여기의 데이터가 바뀌면 아래의 view_emp에도 그대로 반영됨 --테이블처럼 사용가능 select * from view_emp; SEQUENCE 정수값을 순차적으로 발급해주는 객..
05.26(DCL과 TCL 명령어, DD)
2020. 5. 26. 20:23
프로그래밍/SQL
DCL(Data Control Language) 데이터 제어어 DB에 대해 보안, 무결성, 복구 등에 대한 명령어 grant 권한 부여 revoke 권한 회수 TCL (Transaction Control Language) commit / rollback grant / revoke 사용자에게 권한 / 롤을 부여 롤에게 권한 부여 user에게 member_info테이블 조회 권한 부여(하나하나 권한 부여해야함) grant select on member_info to user; grant insert, update, delete on member_info to user; commit; --권한회수 revoke select, insert on member_info from user; --member_info관련..
05.25(DML, DDL의 명령어와 제약조건)
2020. 5. 25. 20:08
프로그래밍/SQL
DML(Data Manipulation Language) 데이터 조작어 별도의 커밋 명령을 통해 DB서버에 실제 반영해야 함 데이터 행에 대한 생성, 수정, 삭제 Data 명령어(CRUD) 설명 select 데이터베이스에 들어있는 데이터를 조회하거나 검색하기 위한 명령어 insert 새로운 행을 추가하는 구문. 실행 후 테이블 행의 개수가 증가함 update 이미 존재하는 데이터의 수정. 명령처리 후에도 행의 전체 갯수의 변화 없음 delete 테이블의 특정행을 삭제하는 명령. where절을 사용하여 어떤행을 삭제할지 조건 설정 1. insert --a. 컬럼명 작성하지 않는 경우 insert into member_info values('tenten', '권정렬', 'ten1234', '010123412..
05.22(top-n분석, window함수)
2020. 5. 22. 20:00
프로그래밍/SQL
TOP-N 분석 rowid, rownum rowid 테이블 특정 레코드에 접근하기 위한 논리적 주소값 rownum 각 행에 대한 순서 오라클에서 내부적으로 자동부여 insert문 데이터추가 순서에 따라 1씩 증가하며 부여됨 where절에 의한 변형 또는 inline-view 생성시 새로 부여 select rownum, rowid, employee.* from employee order by emp_name; --order by해도 rownum은 이미 부여된 번호이기 때문에 변하지 x 예제1)급여가 제일 높은 3명은? (iline view를 통해 rownum 재부여 하기) select rownum new, E.* from(select rownum old, emp_name, salary from employ..
05.21(SUBQUERY)
2020. 5. 21. 20:00
프로그래밍/SQL
inline view from 절에 사용한 서브쿼리를 인라인뷰(inline view)라고 함 view란? 실제 테이블에 근거한 논리적 가상테이블 ① inline-view : from절에 사용. 1회용. ② stored view : 데이터베이스 객체로 저장. 재활용 가능 view를 이용하면, 복잡한 쿼리를 간단히 사용할 수 있음 예제)여사원의 사번, 사원명, 부서코드, 성별 출력 --inline view 사용X select emp_id, emp_name, dept_code, decode(substr(emp_no,8,1), '1', '남', '3', '남', '여') gender from employee where decode(substr(emp_no,8,1), '1', '남', '3', '남', '여') ..