Hi Hi

'파이썬 데이터베이스 연결'에 해당되는 글 1건

  1. 파이썬(python) - 데이터베이스

파이썬(python) - 데이터베이스

 


 파일이 아니라 데이터베이스에서 데이터를 읽어 와야 한다면 여러분 프로그램의 어느 부분을 바꿔야 할까요?
 앞의 예제와 비교하여 보시면 이해하기 쉬울 것입니다. 

데이터베이스에서 데이터를 불러 오는 예제.

import sqlite3  // 표준 SQLite3 라이브러리를 임포트하고 데이터베이스 파일에 있는 데이터에 연결한다.
def find_details(id2find):
    db = sqlite3.connect("c://surfersDB.sdb")  //surfersDB.sdb 데이터베이스 파일로 연결
    db.row_factory = sqlite3.Row
    cursor = db.cursor()
    cursor.execute("select * from surfers")
    rows = cursor.fetchall()
 
//파일이 아니라 데이터베이스에서 모든 사람 데이터를 가져와 row 변수에 할당한다.

    for row in rows:  //각 레코드를 처리 한다.
        if row['id'] == id2find:  ID  // 같은 아이디가 있다면 ~
            s = {}
            s['id']      = str(row['id'])
            s['name']    = row['name']
            s['country'] = row['country']
            s['average'] = str(row['average'])
            s['board']   = row['board']
            s['age']     = str(row['age'])
            cursor.close()
            return(s)
    cursor.close()  // 사용후에는 항상 닫는 것이 좋습니다 ~
    return({})
lookup_id = int(input("Enter the id of the surfer: "))
surfer = find_details(lookup_id)
if surfer:
    print("ID:         " + surfer['id'])
    print("Name:       " + surfer['name'])
    print("Country:    " + surfer['country'])

    print("Average:    " + surfer['average'])
    print("Board type: " + surfer['board'])
    print("Age:        " + surfer['age'])





데이터베이스 시스템 - SQLite3와 같이 대용량의 데이터를 매우 효율적으로 저장할 수 있는 기술이 있다.