DataBase 연동 ( SQLite3 )
참고 : https://pythonbasics.org/flask-sqlite/
아래의 게시물에서 실행한 기본 app에서 부터 시작합니다
[Flask] 1. 실행 및 HTML 렌더링
Flask 설치pip install flask폴더 구조app.pyapp = Flask(__name__)@app.route('/')def home(): return render_template('home.html') if __name__ == '__main__': app.run()home.html 안녕하세요 Flask 실행python app.py웹페이지 확인 CSS, JavaScript
bbangya22.tistory.com
아래의 파일을 다운로드 후 이어서 진행하시면 됩니다.
1) create_db.py 생성
import sqlite3
conn = sqlite3.connect('database.db')
print("Opened database successfully")
conn.execute(
'''
CREATE TABLE students (name TEXT, addr TEXT, city TEXT, pin TEXT)
'''
)
print("Table created successfully")
conn.close()
- flask 가상환경 진입 후 터미널에서 실행
python create_db.py
[Result] database.db 생성 확인
SQLite에서 테이블 생성 확인
2) Data 입력 페이지
@app.route('/enternew')
def new_student():
return render_template('student.html')
3) POST / GET
@app.route('/addrec',methods = ['POST', 'GET'])
def addrec():
if request.method == 'POST':
try:
nm = request.form['nm']
addr = request.form['add']
city = request.form['city']
pin = request.form['pin']
with sql.connect("database.db") as con:
cur = con.cursor()
cur.execute(
'''
INSERT INTO students (name,addr,city,pin) VALUES (?,?,?,?)
''',(nm,addr,city,pin) )
con.commit()
msg = "Record successfully added"
except:
con.rollback()
msg = "error in insert operation"
finally:
return render_template("result.html",msg = msg)
con.close()
[result.html 화면]
Data 입력
Data 확인
입력한 데이터 DataBase에서 적재되었는지 확인
'Python > Flask' 카테고리의 다른 글
[Flask] 1. 실행 및 HTML 렌더링 (0) | 2025.05.16 |
---|---|
[Flask] 실행 및 디버그 모드 (0) | 2025.05.07 |