검색어를 입력하세요.

데이터베이스 14

PostgreSQL과 Python의 만남, PL/Python 활용부터 pg_cron 스케줄링까지

단순한 SMTP 전송을 넘어, 데이터 분석부터 오라클 DB Job 대체까지이전 포스팅(https://odinbox.co.kr/562)에서 우리는 PostgreSQL에서 Python을 연동하여 SMTP 메일을 발송하는 방법을 다루었습니다. 하지만 이것은 PL/Python이 가진 잠재력의 극히 일부에 불과합니다.많은 분이 "Python으로 만든 함수의 결과값을 SQL 쿼리 내에서 바로 사용할 수 있는가?", "외부 API와 통신하여 데이터를 가져와 DB에 넣을 수 있는가?", 그리고 "오라클의 DB Job처럼 스케줄링이 가능한가?"에 대해 궁금합니다.이번 글에서는 PostgreSQL의 확장 기능인 PL/Python을 활용하여 Python의 방대한 라이브러리 생태계를 DB 내부로 가져오는 방법과, pg_cro..

DEVELOPMENT 2026.01.11

PostgreSQL 파이썬 연동방법

들어가며 : SQL의 한계를 넘어서PostgreSQL은 강력한 관계형 데이터베이스이지만 순수 SQL만으로는 복잡한 비즈니스 로직이나 문자열 처리를 구현하는 데 한계가 있습니다. 이때 사용할 수 있는 가장 강력한 도구가 바로 PL/Python입니다. 이는 데이터베이스 내부에서 파이썬 언어를 사용하여 함수나 프로시저를 작성할 수 있게 해주는 절차적 언어 핸들러입니다. 본 글에서는 윈도우 운영체제에서 PL/Python을 사용하기 위한 설치 방법과 환경 설정 그리고 실무에서 활용 가능한 예제 코드를 상세하게 정리해 드립니다.윈도우 환경 설치 및 설정 방법윈도우에서 PostgreSQL과 파이썬을 연동할 때 가장 주의해야 할 점은 버전 호환성입니다. 리눅스 패키지 관리자와 달리 윈도우 인스톨러는 특정 파이썬 버전에..

DEVELOPMENT 2025.12.10

Oracle & PostgreSQL, SMTP 관련 가이드

Oracle vs PostgreSQL 가이드시스템 운영 환경에서 데이터베이스가 직접 이메일을 발송해야 하는 요구사항은 꾸준히 존재합니다. 배치 작업 결과의 즉각적인 보고나 치명적인 데이터 오류 발생 시 관리자 알림을 위해, WAS(Web Application Server)를 거치지 않고 DB 레벨에서 SMTP 프로토콜을 직접 제어하는 것이 효율적일 때가 많습니다. 본 문서에서는 엔터프라이즈의 표준인 Oracle의 UTL_SMTP 방식과 오픈소스의 강자 PostgreSQL의 PL/Python 구현 방식을 비교 분석하고, 실무 적용 시 반드시 마주하게 되는 보안 설정 및 오류 해결 방법까지 상세히 기술합니다.1. Oracle : UTL_SMTP 패키지 활용 및 ACL 보안Technical ContextOra..

IT 2025.12.06

SQL 재귀 쿼리 완전 정리

SQL · 계층형 데이터SQL 재귀 쿼리 완전 정리PostgreSQL · Oracle · MySQL 8.0 기준으로 재귀 CTE와 CONNECT BY를 조직도 예제로 설명하며 무한 재귀 원인과 방지 전략, 경로·깊이·상하위 탐색 패턴을 자세히 정리합니다. 목차재귀 쿼리재귀 쿼리가 필요한 이유재귀 CTE 동작 모델무한 재귀 원인과 방지예제 스키마와 데이터PostgreSQL 작성법Oracle 작성법MySQL 8.0 작성법실전 패턴 모음마무리참조 문서재귀 쿼리재귀 쿼리는 자기 자신을 참조하여 계층 구조를 단계적으로 확장하는 질의 방식입니다. 반복적인 자기 조인을 줄이고, 깊이가 달라져도 동일 패턴으로 전체 트리를 탐색합니다. 표준 SQL에서는 WITH RECURSIVE CTE 형태로 제공되며, Oracle은..

DEVELOPMENT 2025.10.25

Oracle vs PostgreSQL, STRING_AGG(LISTAGG) 가이드

Oracle과 PostgreSQL에서 문자열 집계를 손쉽게 처리하는 STRING_AGG(LISTAGG) 함수의 개념과 활용법STRING_AGG(LISTAGG) 이 글 하나면 끝!SQL을 쓰다 보면 여러 행의 값을 한 줄로 모아야 할 때가 많습니다. 예를 들어, 한 부서의 직원 이름을 콤마로 연결하거나, 여러 제품 코드를 한 칸에 모아 보여주고 싶을 때가 그렇습니다. 이럴 때 유용한 함수가 Oracle의 LISTAGG와 PostgreSQL의 STRING_AGG입니다. 두 함수 모두 여러 행의 문자열을 하나로 합쳐주는 집계 함수로, 보고서 작성이나 데이터 요약에 자주 활용됩니다.목차SQL - STRING_AGG소개STRING_AGG는 여러 행의 문자열 값을 하나의 문자열로 결합해 주는 집계 함수로, Orac..

DEVELOPMENT 2025.07.27

PostgreSQL, 자세히 알아보기

PostgreSQL 도입을 위한 기술적 기준과 실무 적용 사례 총정리PostgreSQL에 대해서 자세히 알아봅시다. 개발을 하다보면 꼭 마주하게 되는 기술이 있는데 그것이 바로 데이터베이스(DB)입니다, 그리고 그중에서도 많이 듣게 되는 이름 중 하나가 이번에 소개하는 PostgreSQL입니다. 오픈소스임에도 불구하고 상용 데이터베이스와 비교해도 뒤쳐지지 않는 성능과 기능을 가지고 있습니다. PostgreSQL에 대해서 자세히 알아보시죠! 목차PostgreSQL소개PostgreSQL은 1986년 미국 UC버클리에서 시작된 POSTGRES 프로젝트를 기반으로 만들어진 오픈소스 데이터베이스이며, 1996년부터 현재의 이름으로 불리기 시작했고 지금은 전세계적으로 널리 사용되는 대표적인 관계형 데이터베이스이며 ..

DEVELOPMENT 2025.04.11

PostgreSQL - DATE_TRUNC 알아보기

postgresql, 날짜형식, 더하기, 빼기, 쿼리, SQL 날짜 자르기 어떻게 하면 좋을까요? 쿼리를 사용하다 보면 날짜 형식을 서로 다른 형식으로 되어있는 것을 비교하는 경우가 많이 있습니다. 이럴 때 쉽게 자를 수 있는 방법이 있으면 좋을 거라는 생각을 하게 됩니다. 날짜 비교를 할 수 있는 다양한 방법을 지원을 하고 있는데 이번엔 그중 DATE_TRUNC에 대해서 알아보도록 하겠습니다. 목차 DATE_TRUNC 사용해보기 PostreSQL기준으로 설명을 먼저 드리면 공식문서[#]를 참고하여 설명합니다. DATE_TRUNC(FIELD, SOURCE [, TIME_ZONE ]) 필드(Field)에 넣을 수 있는 것은 아래와 같이 존재하고 있습니다. 1. microseconds 2. milliseco..

DEVELOPMENT 2023.11.05

클라우드(Cloud)에 대해서 알아봅시다!

클라우드,IT,서비스 구름과 같이 항상 우리 곁에 있는 Cloud? 클라우드 서비스는 요즘 많이 보편 하게 사용되는 서비스 중 하나입니다. 이름에서 알 수 있듯이 클라우드란 구름의 뜻과 같이 언제나 어디서 접근을 할 수 있다는 생각을 해볼 수 있습니다. 그럼 클라우드에 대해서 알아보도록 하겠습니다. 목차 클라우드(Cloud) 클라우드의 개념 클라우드(Cloud)는 네트워크를 통해 접근할 수 있는 가상화된 서버와 서버에서 작동하는 프로그램과 데이터베이스를 제공하는 환경입니다. 쉽게 이야기해서 어떤 플랫폼을 사용을 해서 접근 할 수 있도록 만들어진 서비스라고 생각을 하면 됩니다 그러면 우리가 흔히 많이 듣는 개념이 있습니다. 클라우드가 있고 클라우드 컴퓨팅, 클라우드 서비스 이런 말 많이 들어보셨을 겁니다...

IT 2023.09.25

오라클(Oracle) 테이블 및 데이터 복사

SQL,오라클,데이터베이스,INSERT,SELECT,구조,테이블,삽입,수정 쉽고 빠르게 테이블 및 데이터를 복사합시다. 개발하다 보면 비슷한 구조로 만들어진 테이블이나 데이터를 복사해야 하는 경우가 많습니다. 이럴 경우 바로 지금 알려드릴 방법이 없다면 아마 귀찮게 계속 다른 방법을 사용하시는가요? 저는 이 방법을 알게 된 이후로 쉽고 빠르게 이 방법을 사용을 하닌깐 편해졌습니다. 간단하고 쉬우닌깐 아래의 방법으로 테이블이나 데이터 복사가 필요한 분들은 참고하시면 됩니다 목차 오라클 테이블 및 데이터 복사 1. 테이블 복사 [스키마(Schema) & 데이터(Data)] CREATE TABLE [신규 테이블명] AS SELECT * FROM [복사 할 테이블 명] WHERE [조건문] 2. 테이블 구조 복..

DEVELOPMENT 2023.02.19

오라클 클라이언트 (32비트/64비트) 설치와 관련한 문제 해결방법

오라클, 데이터베이스, 시스템오류, 32비트, 64비트, ODAC, 설치 실행에 문제가 있습니다. 개발하다 갑자기 오류가 생겼습니다. 이런저런 오류를 많이 겪고 해결을 하고 있지만 이런 오류는 또 오랜만에 겪었습니다 혹시나 또 이런 오류를 겪었을 때 찾아볼 수 있고 저와 같이 이런 오류를 겪는 분들에게 조금이나 도움이 될 수 있었으면 하는 생각으로 해결방법을 적으려고 합니다. 목차 오라클 오류 증상 System.InvalidOperationException: Oracle 클라이언트 라이브러리를 로드하려는 시도에서 BadImageFormatException을 Throw했습니다. 32비트 Oracle 클라이언트 구성 요소가 설치된 상태에서 64비트 모드로 실행할 경우 이러한 문제가 발생합니다. 위치 : Sy..

DEVELOPMENT 2023.01.08