반응형

오라클 22

[Oracle] 캐시를 사용하지 않고 실행되게 하는법, Oracle NO CACHE, 캐시 옵션끄기, 캐시 사용안하기

쿼리를 실행하면 결과가 캐시에 저장되어 다음에 동일한 쿼리가 실행될 때 캐시된 결과를 반환할 수 있다.이는 반복 실행으로 인해 처음 실행했을 때보다 더 빠른 결과를 제공하므로, 실행시에는 좋지만 항상 동일한 실행환경에서의 쿼리 속도를 측정하여, 쿼리를 튜닝해야하는 경우에는 해당 옵션이 불필요하다. 1. 일반 쿼리에서 캐시 사용하지 않기아래와 같이 힌트를 사용할 경우 캐시를 사용하지 않고 쿼리를 실행할 수 있다.SELECT /*+ NO CACHE */ column1, column2 FROM table_name; 2. 프로시저 실행시 캐시 사용하지 않기 (1) 프로시저 내부 쿼리에 모두 /*+ NO CACHE */ 힌트를 달아준다. (2) 세션 캐시 비활성화 (3) 관련된 테이블 오프라인으로 만들고 테스트A..

Dev/Database 2024.06.04

[Oracle] Oracle 19c 설치하는 법, 오라클 설치

오라클을 잘못된 경로에 설치하였거나, 버전에 착오가 있어서 설치를 번복해야할 경우, 시스템 레지스트리를 수정하는 등의 매우 귀찮은 작업을 해야하기 때문에 처음 설치시에 집중해서 한번에 끝내는 것이 좋다. 1. 아래 주소에서 Oracle Database 19c(19.3) for Microsoft Windows x64(64-bit) zip 파일을 다운받는다.(https://www.oracle.com/kr/database/technologies/oracle19c-windows-downloads.html) 2. 다운받은 zip 파일을 반드시 root directory로 설정할 위치에서 압축을 푼다.본인은 DB 관련 파일들을 모두 C:\Oracle 폴더에 보관하기로 하여, C:\Oracle 폴더에서 zip 파일 ..

Dev/Database 2024.05.31

[Oracle] 프로시저 실행하는 법

1. IN 변수만 있는 프로시저CALL [프로시저명]('변수1', '변수2', ...);CALL CREATE_STUDENT_ACCOUNT('홍길동', '19910712','남');※ EXEC 는 SQL PLUS 에서만 사용 가능한 명령어임.2. IN, OUT 변수가 있는 프로시저DECLARE [OUT변수명1] [타입명]([길이]);BEGIN [프로시저명]('IN변수명1','IN변수명2','IN변수명3', OUT변수명1);END;DECLARE ERRMSG VARCHAR2(100);BEGIN CREATE_STUDENT_ACCOUNT('홍길동', '19910712','남', ERRMSG);END; 3. 프로시저 실행 후 OUTPUT 조회하기DECLARE ERRMSG VARCHAR2(..

Dev/Database 2024.04.19

[프로그래머스/Oracle] 조건에 부합하는 중고거래 댓글 조회하기

[설명] BOOK 테이블에서 2021년에 출판된 '인문' 카테고리에 속하는 도서 리스트를 찾아서 도서 ID(BOOK_ID), 출판일 (PUBLISHED_DATE)을 출력하는 SQL문을 작성해주세요. 결과는 출판일을 기준으로 오름차순 정렬해주세요.다음은 중고거래 게시판 정보를 담은 USED_GOODS_BOARD 테이블과 중고거래 게시판 첨부파일 정보를 담은USED_GOODS_REPLY 테이블입니다. USED_GOODS_BOARD 테이블은 다음과 같으며 BOARD_ID, WRITER_ID, TITLE, CONTENTS, PRICE, CREATED_DATE, STATUS, VIEWS은 게시글 ID, 작성자 ID, 게시글 제목, 게시글 내용, 가격, 작성일, 거래상태, 조회수를 의미합니다. Column name..

[프로그래머스/Oracle] 조건에 맞는 도서 리스트 출력하기

[설명] 다음은 어느 한 서점에서 판매중인 도서들의 도서 정보(BOOK) 테이블입니다. BOOK 테이블은 각 도서의 정보를 담은 테이블로 아래와 같은 구조로 되어있습니다. Column name Type Nullable Description BOOK_ID INTEGER FALSE 도서 ID CATEGORY VARCHAR(N) FALSE 카테고리(경제, 인문, 소설, 생활, 기술) AUTHOR_ID INTEGER FALSE 저자 ID PRICE INTEGER FALSE 판매가 (원) PUBLISHED_DATE DATE FALSE 출판일 [문제] BOOK 테이블에서 2021년에 출판된 '인문' 카테고리에 속하는 도서 리스트를 찾아서 도서 ID(BOOK_ID), 출판일 (PUBLISHED_DATE)을 출력하는 ..

[Oracle] 프로시저 내용검색

찾고싶은 타입에 따라 PROCEDURE, FUNCTION, TRIGGER 을 TYPE 조건으로 걸어 검색할 수 있다.SELECT *FROM USER_SOURCEWHERE 1=1AND TYPE = 'PROCEDURE' -- FUNCTION, TRIGGER, PROCEDUREAND TEXT LIKE '%찾고싶은텍스트%' ORDER BY NAME, LINE 따옴표도 포함한 텍스트를 찾고 싶다면 아래와 같이 하면 된다. SELECT *FROM USER_SOURCEWHERE 1=1AND TYPE = 'PROCEDURE' -- FUNCTION, TRIGGER, PROCEDUREAND TEXT LIKE '%''찾고싶은텍스트''%' ORDER BY NAME, LINE

Dev/Database 2023.06.20

[Oracle/DBeaver] 'Keep-Alive monitor' 에 문제점이 발생했습니다. Java heap space (메모리 부족 오류) / 메모리사용량 / 메모리증설 / 메모리추가

DBeaver 에서 csv 파일로 데이터 가져오기를 하던 도중 다음과 같은 에러가 발생했다. 대용량 테이블을 이관하거나, CSV 파일 작업을 할 때 Java heap space 부족 오류가 발생하는 경우가 있다. DBeaver 메모리를 증설하는 방법으로 위의 에러를 해결할 수 있다. [ Window 환경에서의 DBeaver 메모리 증설 ] 1. DBeaver 아이콘 마우스 우클릭 > 속성 대상에 -vmargs -Xms8192m 를 추가한다. (Xms는 DBeaver 가 구동시 확보하는 최소 메모리 사이즈이며, Xmx는 최대 메모리양이다. 8192m 으로 설정하면 최대 8GB의 메모리를 끌어다 쓸 수 있다.) 2. DBeaver의 메모리 사용량 보이게 하기. 상단의 윈도우(W) > 설정 > 힙 상태 표시(W)

Dev/Database 2023.06.12

[Oracle] TRUNCATE, DELETE, DROP 차이, 테이블 데이터 삭제

1. 테이블 구조는 남기고 데이터 전체 삭제 - DDL - 트랜잭션 로그에 한번만 기록되므로 성능이 DELETE보다 좋음 - ROLLBACK 불가능 - 테이블 용량이 초기화됨 TRUNCATE TABLE [테이블명]; 2. 테이블 존재 자체를 삭제 - DDL - 테이블 정의, 테이블에 대한 데이터, 인덱스, 트리거, 제약조건 및 권한 모두 제거 DROP TABLE [테이블명]; 3. 조건절 이용해서 특정 행만 삭제 - DML - 테이블 용량 감소 X - 행 잠금(LOCK)을 사용하여 실행됨 - 삭제된 각 행에 대해 트랜잭션 로그를 기록하므로 TRUNCATE 보다 느림 - 인덱싱 된 VIEW 와 함께 사용가능 - ROLLBACK 가능 DELETE TABLE [테이블명] WHERE ROWNUM > 2 ;

Dev/Database 2023.06.12

[Oracle/DBeaver] 데이터 추출하기

DBeaver에서 특정 테이블의 데이터를 다양한 형태로 추출할 수 있다. 1. 추출하려는 테이블 우클릭 > 데이터 내보내기 2. 원하는 데이터 형식 선택 > 다음 3. 파일 저장 위치 설정 후 진행 버튼 클릭 Q. 인코딩 형식을 UTF-8 로 선택했음에도 한글이 깨지는 경우에는 데이터 추출을 어떻게 하나요? 1. SELECT COUT(*) FROM [가져오려는 테이블] 출력 후 전체 데이터 갯수만큼 한꺼번에 조회되도록 하단 숫자 변경 2. 다시 전체 데이터 조회 후 행 전체 클릭 및 복사 4. 엑셀 파일에 붙여넣기

Dev/Database 2023.02.22
반응형