이렇게 테이블을 만들어 어떤 데이터를 담을지 구조를 먼저 정의한 후 저장할 수 있습니다. 마지막 라인에 등장하는 conn.commit()이란 데이터베이스를 제어한 후 결과를 최종적으로 확정 짓는 코드입니다. 결과를 확정 짓지 않으면 그동안 데이터를 저장하는 등 변경된 사항들이 데이터베이스에 반영되지 않습니다. 따라서 커밋(commit)을 수행하여 변경 사항을 저장해 주어야 하지만, 데이터베이스를 사용하면서 매번 커밋해 주는 것은 은근히 귀찮고 불편한 일입니다. 이때 데이터베이스에 연결하는 코드 conn = sqlite3.connect('universe_price.db')에 다음과 같이 isolation_level이라는 옵션을 추가하면 커밋하는 코드를 사용하지 않아도 자동으로 커밋 처리를 할 수 있습니다.
db_helper.py
conn = sqlite3.connect('universe_price.db', isolation_level=None)
cur = conn.cursor()
cur.execute('''CREATE TABLE balance
(code varchar(6) PRIMARY KEY,
bid_price int(20) NOT NULL,
quantity int(20) NOT NULL,
created_at varchar(14) NOT NULL,
will_clear_at varchar(14)
)''')
Note ≡
이외에도 설명해야 할 점이 많지만 전부 다 설명하기에는 지면 한계가 있으므로 최대한 간략히 설명했습니다. SQL을 더 자세히 익히고 싶다면 다음 웹 사이트를 참고하기 바랍니다.