1. 程式人生 > >flask連線mysql資料庫

flask連線mysql資料庫

在flask所在資料夾中新建一個models.py檔案,輸入以下程式碼

import pymysql

def get_conn():
    host = "127.0.0.1"
    port = 3306     #注:此處應該使用數字而不是字串
    db = 'learn_flask_mysql'
    user = 'root'
    password = ''
    conn = pymysql.connect(
        host=host,
        user=user,
        password=password,
        port=port,
        db=db,
    )
    return
conn class User(object): def __init__(self,user_id,user_name): self.user_id = user_id self.user_name = user_name def save(self): conn = get_conn() cursor = conn.cursor() sql = "INSERT INTO user(user_id, user_name) VALUES (%s,%s)" cursor.execute(sql,(self.user_id,self.user_name)) conn.commit() cursor.close() conn.close() @staticmethod
def query_all(): conn = get_conn() cursor = conn.cursor() sql = "SELECT * from user" cursor.execute(sql) rows = cursor.fetchall() users = [] for row in rows: user = User(row[0],row[1]) users.append(user) conn.commit() cursor.close() conn.close() return
users def __str__(self): return "id:{} name:{}".format(self.user_id,self.user_name)

2.在flask新建資料夾中新建一個manage.py,並輸入以下程式碼

from flask_script import Manager
from learn_flask_mysql import app
from models import User

manager = Manager(app)

@manager.command
def save():
    user = User(1,'csdn')
    user.save()

@manager.command
def query_all():
    users = User.query_all()
    for user in users:
        print(user)


if __name__ == "__main__":
    manager.run()

之後使用python manage.py save即可儲存資料,使用python manage.py qurey_all即可查詢資料