Section3 - N314

mochi·2022년 12월 18일
0

부트캠프

목록 보기
9/9

API


PEP 249

DB와 연결되는 파이썬 모듈들을 제작할 때 권장되는 가이드 라인
-> Mysql, SQLite, psycopg 등 포함


SQLite

  • 파이썬과 함께 설치되는 가벼운(서버를 띄우지 않고 작업할 때) 파일형 RDB

<DB 연결>

#import하여 사용
import sqlite3

#conn : DB와 연결
conn = sqlite3.connect('test.db')

#cur : DB와 소통하기 위한 장치
cur = conn.cursor()

<소통>

#execute : DB와 소통방식

#테이블 제작
cur.execute(
"""
	CREATE TABLE test_table ( 
	name VARCHAR(32),
	age INT);
"""
)

#데이터 추가
cur.execute(
"""
    INSERT INTO test_table (name, age) 
    VALUES ('spongebob', 12);
"""
)

<조회>

#commit
conn.commit()

#데이터 조회
cur.exectute("SELECT * FROM test_table;") #-----> x (조회 안됨)

cur.fetchone()
cur.fetchmany(2)
cur.fetchall()

위의 경우에서

cur.exectute("SELECT * FROM test_table;")

을 이용하면 데이터가 조회되지 않는다.

그 이유는 execute문을 실행하면 cur 객체에 대한 정보만 보여주기 때문이고 따라서 cur.fetch문을 이용하여 조회해야 한다.


클라우드 DB

원격으로 관리되는 DB로, 원격으로 관리되기 때문에 해당 DB에 대한 접근 정보가 있어야 한다.

#온-프레미스

  • 클라우드 방식과 반대 개념으로, 직접 물리적 서버를 구축하는 것을 말한다.

URI

  • 원격으로 DB에 연결할 때의 연결 형식

서비스://유저_이름:유저_비밀번호@호스트:포트번호/경로


PostgreSQL

  • 객체지향(O) RDBMS로써, DB 서버중 하나이다.

<DB 연결>

import psycopg2

#URI 형식의 온라인 데이터베이스와 연결
conn = psycopg2.connect(
    host="서버 호스트 주소",
    database="데이터베이스 이름",
    user="유저 이름",
    password="유저 비밀번호")

!!!이후 동작은 sqlite와 동일!!!

profile
모치

0개의 댓글