데이터베이스(5) - DB-API

미남로그·2021년 8월 25일
0

실제로 데이터베이스를 구현해 보도록 하겠습니다.

1단계

메모리에 SQLite3 데이터베이스를 만들고 4가지 속성을 지닌 sales 테이블을 만든다.

import sqlite3

conn = sqlite3.connect(':memory:')
query = """CREATE TABLE sales
           product VARCHAR(20),
           maker VARCHAR(40),
           amount FLOAT,
           date DATE);"""
conn.execute(query)
conn.commit()

2단계

sales 테이블에 데이터를 삽입한다.

data = [('smart phone', 'Apple', '47.2', '2019-08-03'),
        ('printer', 'Samsung', '15.2', '2018-02-10',),
        ('monitor', 'LG', '14.25', '2019-12-20'),
        ('python book', 'Amazon', '12.40', '2020-01-23')]
statement = "INSERT INTO sales VALUES(?, ?, ?, ?)"
conn.executemany(statement, data)
conn.commit()

3단계

sales 테이블에 질의한다.

cursor = conn.execute("SELECT * FROM sales")
rows = cursor.fetchall()

4단계

출력 데이터의 개수를 샌다.

row_counter = 0
for row in rows:
	print(row)
   	row_counter += 1

print("Number of rows: {}".format(row_counter))

전체 코드

import sqlite3

conn = sqlite3.connect(':memory:')
query = """CREATE TABLE sales
            (product VARCHAR(20),
            maker VARCHAR(40),
            amount FLOAT,
            date DATE);"""
conn.execute(query)
conn.commit()

data = [('smart phone', 'Apple', '47.2', '2019-08-03'),
        ('printer', 'Samsung', '15.2', '2018-02-10',),
        ('monitor', 'LG', '14.25', '2019-12-20'),
        ('python book', 'Amazon', '12.40', '2020-01-23')]
statement = "INSERT INTO sales VALUES(?, ?, ?, ?)"
conn.executemany(statement, data)
conn.commit()

cursor = conn.execute("SELECT * FROM sales")
rows = cursor.fetchall()

row_counter = 0
for row in rows:
    print(row)
    row_counter +=1

print("Number of rows: {}".format(row_counter))

실행 결과

데이터베이스 정리 글

  1. 데이터 관리 프로그램 만들기(1) - 파일 시스템 활용
  2. 데이터 관리 프로그램 만들기(2) - Pandas와 csv 파일
  3. 데이터베이스(3) SQL - DDL, DML, DCL
  4. 데이터베이스(4) - 파이썬으로 SQL문 사용하는 기본 동작들
  5. 데이터베이스(5) - DB-API
profile
미남이 귀엽죠

0개의 댓글