[파이썬] PostgreSQL 테이블 생성과 스키마

소개

PostgreSQL은 강력하고 안정적인 오픈 소스 관계형 데이터베이스 시스템입니다. 이 문서에서는 Python을 사용하여 PostgreSQL에서 테이블을 생성하고 스키마를 정의하는 방법에 대해 알아보겠습니다.

psycopg2 라이브러리 설치

Python에서 PostgreSQL 데이터베이스와 상호 작용하기 위해 psycopg2 라이브러리를 사용할 것입니다. 먼저, 다음 명령을 사용하여 psycopg2를 설치합니다.

pip install psycopg2

PostgreSQL 접속

먼저, psycopg2를 사용하여 PostgreSQL에 연결해야 합니다. 다음 코드를 사용하여 데이터베이스에 접속합니다.

import psycopg2

conn = psycopg2.connect(
    host="localhost",
    database="mydatabase",
    user="myuser",
    password="mypassword"
)

위의 코드에서 host, database, user, password 값을 실제 데이터베이스에 맞게 변경해야 합니다.

테이블 생성

이제 PostgreSQL에서 테이블을 생성하는 방법을 알아보겠습니다. 테이블을 생성하려면 SQL CREATE TABLE 문을 실행해야 합니다.

cur = conn.cursor()

create_table_query = """
CREATE TABLE employees (
    id SERIAL PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    age INTEGER,
    department VARCHAR(100)
)
"""

cur.execute(create_table_query)
conn.commit()

위의 코드는 employees라는 테이블을 생성하는 예시입니다. 테이블에는 id, name, age, department라는 네 개의 칼럼이 포함되어 있습니다.

스키마 정의

스키마는 테이블의 구조를 정의하는 데 사용됩니다. 스키마 정의는 CREATE TABLE 문에서 각 칼럼의 데이터 유형을 지정하여 이루어집니다. 예를 들어, VARCHAR(100)은 최대 100자로 구성된 텍스트를 나타냅니다.

또한, 스키마에는 다양한 제약 조건을 추가할 수도 있습니다. 위의 코드에서는 id 칼럼에 대해 SERIAL PRIMARY KEY 제약 조건을 추가하여 자동 증가하는 기본 키를 생성했습니다.

마무리

이제 Python을 사용하여 PostgreSQL에서 테이블을 생성하고 스키마를 정의하는 방법을 알게 되었습니다. 이러한 절차를 따르면 PostgreSQL 데이터베이스를 사용하여 애플리케이션에 필요한 테이블 및 스키마를 구성할 수 있습니다.

더 많은 기능과 옵션을 알아보기 위해 PostgreSQL 공식 문서를 참조할 수 있습니다.