[python] 파이썬 Psycopg2를 사용하여 PostgreSQL 데이터베이스의 테이블 복사 및 이동하는 방법은?

파이썬에서 PostgreSQL 데이터베이스를 조작하려면 Psycopg2 라이브러리를 사용할 수 있습니다. 이 라이브러리는 PostgreSQL 데이터베이스와의 연결을 생성하고 데이터베이스 작업을 수행하는 데 도움이 됩니다.

테이블을 복사하고 이동하기 위해 다음과 같은 단계를 따를 수 있습니다.

  1. 필요한 라이브러리 가져오기
import psycopg2
  1. 데이터베이스 연결 설정
conn = psycopg2.connect(
    database="your_database_name",
    user="your_username",
    password="your_password",
    host="your_host",
    port="your_port"
)
  1. 데이터베이스 커서 생성
cur = conn.cursor()
  1. 테이블 복사 및 이동
def copy_table(source_table, destination_table):
    # 테이블 복사 SQL 문장 생성
    copy_sql = f"COPY {source_table} TO STDOUT"
    paste_sql = f"COPY {destination_table} FROM STDIN"
    
    # 소스 테이블에서 데이터 가져오기
    with open("tmp_data.csv", "w") as f:
        cur.copy_expert(copy_sql, f)
    
    # 대상 테이블에 데이터 복사
    with open("tmp_data.csv", "r") as f:
        cur.copy_expert(paste_sql, f)

# 예제
copy_table("source_table", "destination_table")

위 코드는 source_table에서 데이터를 가져와서 임시 파일에 저장한 다음, 해당 파일을 이용하여 destination_table로 데이터를 복사합니다.

이제 파이썬을 사용하여 PostgreSQL 데이터베이스의 테이블을 복사하고 이동할 수 있는 방법을 알게 되었습니다.

더 자세한 정보는 Psycopg2 문서를 참조하십시오.