728x90
728x90

oracle 12

실무에서 유용한 Oracle 샘플 테이블과 MERGE INTO 활용 예제

안녕하세요! 오늘은 Oracle 데이터베이스에서 실무적으로 사용할 수 있는 샘플 테이블을 만들고, MERGE INTO 문을 활용해 데이터를 효율적으로 병합하는 방법을 소개합니다. 실무에서는 테이블이 단순히 3~4개 컬럼으로 끝나는 경우는 드물죠. 그래서 이번 예제에서는 10개 컬럼으로 구성된 테이블과 **복합 기본 키(Composite Primary Key)**를 사용해 보겠습니다.1. 샘플 테이블 설계실무를 가정해 고객 주문 데이터를 다루는 테이블을 만들어 봅시다:orders_target: 주문 데이터를 저장하는 대상 테이블orders_source: 외부에서 가져온 주문 데이터를 임시로 저장하는 원본 테이블   -- 대상 테이블 생성 (orders_target)CREATE TABLE orders_tar..

Nuxt.js와 Spring Boot로 Oracle 저장 프로시저 소스 및 파라미터 조회하기

Nuxt.js 프론트엔드와 Spring Boot 백엔드를 사용해 Oracle DB에서 특정 저장 프로시저의 소스 코드를 조회하고 화면에 표시하는 방법을 소개합니다. Spring Boot에서 저장 프로시저 소스 조회 API를 확장해서, 소스 코드와 함께 저장 프로시저의 파라미터 정보도 함께 반환하도록 수정하겠습니다. Oracle DB에서 파라미터 정보는 USER_ARGUMENTS 또는 ALL_ARGUMENTS 뷰를 통해 조회할 수 있습니다. 아래는 이를 반영한 코드입니다.  Spring Boot: 저장 프로시저 소스 + 파라미터 정보 조회1. 프로젝트 설정 (pom.xml)(이전과 동일, 변경 없음)xml  org.springframework.boot spring-boot-..

로컬 Oracle 데이터베이스와 리모트 Oracle 데이터베이스 연결 설정 가이드 (DB 링크 생성)

로컬 Oracle 사용자인 A(로컬 데이터베이스)와 리모트 Oracle 데이터베이스의 사용자 B를 연결하기 위해 DBA가 수행해야 할 모든 단계를 아래에 정리했습니다. 여기에는 DB 링크 설정, 필요한 권한 부여, 기본적인 네트워크 구성을 모두 포함합니다.전체 단계: DBA가 해야 할 작업1. 기본 요구사항 준비DBA 또는 관리자 권한으로 아래 항목들을 확인합니다:로컬 데이터베이스와 리모트 데이터베이스 정보 확보:리모트 DB의 호스트/IP리모트 DB의 리스너 포트(기본: 1521)리모트 DB의 서비스 이름 (SERVICE_NAME 혹은 SID)리모트 사용자의 계정 정보 (B 사용자, 비밀번호)리모트 DB에서 사용하는 테이블 또는 뷰 이름로컬 DB와 리모트 DB의 네트워크 연결 확인로컬 DB 서버에서 리모..

Oracle 외래 키 제약 조건 무시 및 데이터 대량삽입

Oracle 데이터베이스에서 대량의 데이터를 삽입할 때 외래 키 제약 조건으로 인해 발생하는 문제는 개발자들이 자주 마주하는 어려움 중 하나입니다. 외래 키 제약 조건은 데이터베이스의 데이터 무결성을 유지하는 중요한 역할을 하지만, 대량의 데이터를 빠르게 삽입해야 하는 경우 오히려 성능 저하를 야기할 수 있습니다. 이러한 상황에서 외래 키 제약 조건을 일시적으로 비활성화하고 데이터를 삽입하는 방법은 효율적인 데이터 처리를 위한 필수적인 기술입니다.본 글에서는 Oracle에서 외래 키 제약 조건을 무시하고 데이터를 삽입하는 다양한 방법을 자세히 살펴보고, 각 방법의 장단점과 적용 시 주의해야 할 사항을 분석합니다. 또한, 데이터 무결성을 유지하면서 효율적인 데이터 삽입을 위한 최적의 방법을 제시하고, 실제..

Oracle 데이터베이스에서 테이블 목록을 가져오고 각 테이블의 필드 정보와 총 행 수를 기반으로 페이징된 SELECT 문을 동적으로 생성

Oracle 데이터베이스에서 테이블 목록을 가져오고 각 테이블의 필드 정보와 총 행 수를 기반으로 페이징된 SELECT 문을 동적으로 생성하는 Node.js 예제를 아래와 같이 정리했습니다.목표테이블 목록 가져오기: 특정 사용자가 소유한 테이블을 조회합니다.각 테이블의 컬럼 정보와 총 행 수 구하기: COUNT(*)를 사용하여 각 테이블의 총 레코드 수를 가져옵니다.페이징 처리: 각 테이블에 대해 10,000개 레코드씩 페이징하여 ROWNUM을 이용해 SELECT 문을 생성합니다. Node.js 코드 예제const oracledb = require('oracledb');// Oracle DB 연결 정보const dbConfig = { user: 'your_username', password: 'you..

Node.js를 활용한 Oracle과 PostgreSQL 간 데이터 이동: 실전 가이드

Node.js의 비동기 처리 특성은 다양한 데이터베이스와의 연동을 효율적으로 수행하는 데 큰 장점을 제공합니다. 이번 글에서는 Node.js를 이용하여 Oracle 데이터베이스에서 데이터를 조회하고, PostgreSQL 데이터베이스에 삽입 또는 업데이트하는 방법을 상세히 알아보겠습니다.1. 환경 설정 및 라이브러리 설치Node.js 설치: Node.js 공식 홈페이지에서 LTS 버전을 다운로드하여 설치합니다.npm(Node Package Manager) 설치: Node.js 설치와 함께 자동으로 설치됩니다.라이브러리 설치:Oracle: node-oracledb 패키지를 설치합니다. npm install oracledbPostgreSQL: pg 패키지를 설치합니다. npm install pg2. Node...

dumpfile.dmp 에서 convertes_file.sql 이 생성되는 과정을 자세히 알고 싶어!

dumpfile.dmp에서 converted_file.sql을 생성하는 과정은 Oracle Datapump의 메타데이터를 추출하고, 이를 PostgreSQL에서 사용할 수 있는 SQL 형식으로 변환하는 작업을 포함합니다. 이 작업은 EXPDP로 생성된 .dmp 파일의 내용을 분석하고 변환하는 스크립트나 도구를 통해 이루어질 수 있습니다. 아래는 이를 단계별로 설명한 과정입니다.1. .dmp 파일에서 메타데이터 추출Oracle Datapump는 데이터와 메타데이터를 .dmp 형식으로 저장합니다. converted_file.sql을 생성하려면 다음 작업을 수행해야 합니다.A. 메타데이터 추출Oracle에서 .dmp 파일을 내보낼 때 메타데이터만 추출하도록 설정할 수 있습니다.expdp username/pas..

PostgreSQL 2024.12.03

오라클 Datapump 로 오라클에서 포스트그레sql로 마이그레이션 하는 과정

Oracle Datapump를 사용하여 Oracle에서 PostgreSQL로 데이터를 마이그레이션하는 과정은 데이터의 구조 및 데이터를 적절히 추출, 변환, 로드(ETL)하는 작업을 포함합니다. 전체적인 과정을 단계별로 아래에 설명드리겠습니다.1. 사전 준비환경 점검Oracle 데이터베이스와 PostgreSQL 데이터베이스 모두 사용 가능한 상태인지 확인합니다.필요한 네트워크 연결 및 권한이 설정되어 있는지 확인합니다.호환성 확인Oracle과 PostgreSQL 간 데이터 타입의 차이를 분석합니다.테이블 구조, 인덱스, 제약 조건, 트리거, 뷰 등 이식 가능한 요소와 그렇지 않은 요소를 식별합니다.PostgreSQL 환경 구성PostgreSQL에서 Oracle 데이터를 수용할 수 있도록 필요한 스키마와 ..

PostgreSQL 2024.12.03

Oracle Stored Procedure 샘플로 ora2pg 사용예

Oracle의 Stored Procedure를 PostgreSQL로 변환할 때, 실제 샘플 코드와 변환 결과를 단계별로 상세히 설명드리겠습니다.Oracle Stored Procedure 샘플아래는 Oracle에서 사용되는 간단한 Stored Procedure입니다.Oracle 코드CREATE OR REPLACE PROCEDURE calculate_bonus ( p_employee_id IN NUMBER, p_bonus OUT NUMBER) AS v_salary NUMBER;BEGIN -- 사원의 급여 조회 SELECT salary INTO v_salary FROM employees WHERE employee_id = p_employee_id; -- 보너스 계..

PostgreSQL 2024.12.02

Oracle 데이터를 PostgreSQL로 손쉽게 마이그레이션하는 ora2pg: 상세 가이드

다양한 이유로 Oracle 데이터베이스를 PostgreSQL로 마이그레이션해야 할 필요가 생길 수 있습니다. 성능, 비용, 오픈 소스 생태계 등 다양한 요소를 고려하여 PostgreSQL로의 전환을 결정하는 경우가 많습니다. 이러한 마이그레이션 작업을 효율적으로 수행하기 위한 강력한 도구 중 하나가 바로 ora2pg입니다.ora2pg란 무엇인가?ora2pg는 Oracle 데이터베이스의 테이블, 인덱스, 시퀀스, 트리거, 뷰 등 다양한 객체를 PostgreSQL로 변환하는 오픈 소스 도구입니다. 복잡한 SQL 문법과 데이터 타입 차이를 자동으로 변환해주며, 사용자 정의 함수나 패키지와 같은 고급 기능까지도 지원합니다. 이를 통해 수작업으로 진행하는 마이그레이션 작업의 오류 가능성을 줄이고, 시간과 비용을 ..

728x90
728x90