오라클

    [JDBC] 개발환경 구축

    [JDBC] 개발환경 구축

    JDBC ? (Java DataBase Connectivity) 자바에서 데이터베이스에 접근할 수 있게 해주는 Programming API JDBC구조 JDBC 개발환경 구축 1. ojdbc8 다운로드 https://www.oracle.com/database/technologies/appdev/jdbc-ucp-18-15-downloads.html 혹은 내 컴퓨터 경로안의 ojdbc8 파일을 찾을 수도 있다. C:\app\User\product\18.0.0\dbhomeXE\jdbc\lib 2. lib 폴더 생성 후 ojdbc8 파일 복사 붙여넣기 3. 환경 설정 Properties 4. 환경 변수 세팅 Java Build Path > Liberaries > Add JARs.. > ojdbc8 파일 추가 >..

    [Oracle] Chap13 SYNONYM

    SYNONYM 시노님이란 '동의어'를 뜻한다. 다른 데이터베이스가 가진 객체에 대한 별명 혹은 줄임말 여러 사용자가 테이블을 공유할 경우 다른 사용자가 테이블에 접근할 때 '사용자명.테이블명' 으로 표현하는데 동의어를 사용하면 간단하게 사용할 수 있다. SYNONYM 생성 CREATE SYNONYM 줄임말 FOR 사용자명.객체명; 동의어 생성 역시 권한이 필요하므로 시스템계정으로 권한 부여를 먼저 해주어야 한다. GRANT CREATE SYNONYM TO C##EMPLOYEE; 권한 부여 후 CREATE SYNONYM 생성 CREATE SYNONYM EMP FOR EMPLOYEE; 동의어의 구분 1. 비공개 동의어 객체에 대한 접근 권한을 부여 받은 사용자가 정의한 동의어 2. 공개 동의어 모든 권한을 ..

    [Oracle] Chap12 INDEX

    INDEX SQL 명령문의 검색 처리 속도를 향상시키기 위해 컬럼에 대해서 셍성하는 오라클 객체 하드디스크의 어느 위치인지에 대한 정보를 가진 주소록 DATA - ROWID로 구성 ROWID 구조 : 오브젝트 번호, 상대 파일 번호, 블록 번호, 데이터 번호 SELECT ROWID -- 주소값 , E.EMP_ID , E.EMP_NAME FROM EMPLOYEE E; -- 출력 -- AAAR/uAAHAAAACUAAA200김혜수 인덱스의 내부 구조는 이진트리 형식으로 구성되어 있고 인덱스를 생성하기 위해서는 시간이 필요하다. 또한 인덱스를 위한 추가 저장 공간이 필요하기 때문에 반드시 좋은 것은 아니다. => 인덱스가 생성 된 컬럼에서 DML 작업이 빈번한 경우 처리 속도가 느려진다. 따라서 일반적으로 테이..

    [Oracle] Chap10 VIEW

    VIEW SELECT 쿼리문을 저장한 객체이다. 실질적인 데이터를 저장하고 있지 않음 테이블을 사용하는 것과 동일하게 사용할 수 있다. 1) 복잡한 SELECT문을 다시 작성할 필요가 없음 2) 민감한 데이터를 숨길수 있음 CREATE VIEW CREATE [OR REPLACE] VIEW 뷰이름 AS 서브쿼리 -- 사번, 이름, 직급명, 부서명, 근무지역을 조회하고, -- 그 결과를 V_RESULT_EMP 라는 뷰를 생성해서 저장하세요 CREATE VIEW V_RESULT_EMP AS SELECT E.EMP_ID , E.EMP_NAME , J.JOB_NAME , D.DEPT_TITLE , L.LOCAL_NAME FROM EMPLOYEE E LEFT JOIN JOB J ON (E.JOB_CODE = J.J..

    [Oracle] Chap09 TCL 트랜잭션

    TCL (Transaction Cotrol Language) 트랜잭션 제어 언어 COMMIT과 ROLLBACK이 있다. 1. 트랜잭션이란? 한꺼번에 수행되어야 할 최소의 작업 단위를 말한다. 논리적 작업 단위 (Logical Unit og Work : LUM) 하나의 트랜잭션으로 이루어진 작업은 반드시 한꺼번에 완료(COMMIT)되어야 하며, 그렇지 않은 경우에는 한꺼번에 취소(ROLLBACK) 되어야 함 2. COMMIT 트랜잭션 작업이 정상 완료되면 변경 내용을 영구히 저장 3. ROLLBACK 트랜잭션 작업을 취소하고 최근 COMMIT한 시점으로 이동 4. SAVWPOINT 세이브포인트명 현재 트랜잭션 작업 시점에 이름을 정해줌 하나의 트랜잭션 안에 구역을 나눔 SAVEPOINT SV1 ; 5. R..

    [Oracle] Chap08 DDL

    DDL (Data Definition Language) 데이터 정의어 1. ALTER / 2. DROP 객체를 수정하는 구문 1) 테이블 객체 수정 테이블 수정 ALTER TABLE 테이블명 수정할 내용; 2) 컬럼 추가/삭제/변경 2-1) 컬럼 추가 ALTER TABLE 테이블명 ADD (컬럼명 자료형); 2-2) 컬럼 생성 시 DEFAULT 값 지정 ALTER TABLE 테이블명 ADD (컬럼명 자료형 DEFAULT 디폴트값); 2-3) 컬럼삭제 ALTER TABLE 테이블명 DROP COLUMN 삭제할컬럼명 또는 DROP (삭제할컬럼명); 데이터가 기록 되어 있어도 삭제 된다. 삭제된 컬럼은 복구가 불가능 테이블에는 최소 한 개 이상의 컬럼이 존재해야 함 모든 컬럼 삭제 불가능 컬럼 삭제 시 참조하..

    [Oracle] Chap07 DML

    DML (Data Manupulation Language) 데이터 조작 언어 INSERT, UPDATE, DELETE, SELECT 테이블에 값을 삽입하거나, 수정하거나, 삭제하거나, 조회하는 언어 1. INSERT 새로운 행을 추가하는 구문이다. 테이블의 행 갯수가 증가한다. 테이블의 일부 컬럼에 INSERT할 때 INSERT INTO 테이블명 (컬럼명, 컬럼명, ...) VALUES (데이터, 데이터, ...); 테이블의 모든 컬럼에 INSERT할 때 INSERT INTO 테이블명 VALUES (데이터, 데이터, ...); 하지만 모든 컬럼에 INSERT할 때에도 컬럼명을 기술하는 것이 의미 파악에 더 좋다. INSERT INTO EMPLOYEE E ( E.EMP_ID, E.EMP_NAME, E.EM..

    [Oracle] Chap06 테이블 생성 및 제약조건

    1. DDL (CREATE TABLE) DDL (DATA DEFINITION LANGUAGE) : 데이터 정의 언어 객체(OBJECT)를 만들고(CREATE), 수정(ALTER)하고, 삭제(DROP)하는 구문 1-1. CREATE 테이블 만들기 [표현식] CREATE TABLE 테이블명 (컬럼명 자료형(크기), 컬럼명 자료형(크기),...) CREATE TABLE MEMBER ( MEMBER_ID VARCHAR(20), MEMBER_PWD VARCHAR(20), MEMBER_NAME VARCHAR(20) ); 1-2. COMMENT 컬럼에 주석달기 [표현식] COMMENT ON COLUMN 테이블명.컬럼명 IS '주석내용'; COMMENT ON COLUMN MEMBER.MEMBER_ID IS '회원아이디..

    [Oracle] SQL문제풀이 / SUBQUERY

    목요일 수업 후 받은 문제 25개와 금요일 수업 후 19개의 서브쿼리 문제를 풀었고, 그중 어려웠던 문제와 두 가지 이상의 방법으로 풀어본 문제를 포스팅한다. 과제를 위한 워크시트를 따로 제공받음. (대학교의 정보를 담은) 문제1 ‘음악학과’ 학생들의 평점을 구하려고 한다. 음악학과 학생들의 "학번", "학생 이름", "전체 평점"을 출력하는 SQL 문장을 작성하시오. (단, 평점은 소수점 1자리까지만 반올림하여 표시한다.) 1) 인라인뷰 안에 음악학과 컬럼에 별칭 사용 SELECT V.학번 , V.학생이름 , ROUND(AVG(G.POINT),1) "전체 평점" FROM (SELECT S.STUDENT_NO 학번 , S.STUDENT_NAME 학생이름 FROM TB_STUDENT S JOIN TB_DE..