关于flask_sqlalchemy数据库无法获取新数据的问题

首先,我新建了一个名为test_db的数据库

img


然后在pycharm中新建一个python文件连接该库,并建一个名为User_table的表


from flask_sqlalchemy import SQLAlchemy
from flask import Flask
import pymysql

app = Flask(__name__)

# app.config["SQLALCHEMY_DATABASE_URI"] = 'mysql+pymysql://用户名:密码@127.0.0.1:3306/数据库名'

# # app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///"+"数据库的存放地址"

app.config["SQLALCHEMY_DATABASE_URI"] = 'mysql+pymysql://root:123456@127.0.0.1:3306/test_db'
app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = True
# app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True
app.config["SECRET_KEY"] = "123456asd"


# 实例化数据库
db = SQLAlchemy(app)

# 用户表
class User_table(db.Model):
    __tablename__ = "user_table"
    id = db.Column(db.Integer, primary_key = True)
    username = db.Column(db.String(16), nullable=False)
    userphone = db.Column(db.String(11), nullable=False)
    password = db.Column(db.String(16), nullable=False)


if __name__ == '__main__':
    db.create_all()
    # db.drop_all()

新建两个python文件tx.py和rx.py

img

rx.py内容:

import time
from db_test import db, User_table

j = 0
while True:
    # 每5秒读取一次数据
    time.sleep(5)
    j += 1
    getmsg = User_table.query.all()
    for i in getmsg:
        # print(i)
        print("第" + str(j) + "次:" + i.username)
    print("-------------")

tx.py内容:

from db_test import db, User_table
import time
a = 0
while True:
    # 每8秒写入一次数据
    time.sleep(8)
    a += 1
    ss = User_table(username="李四" + str(a), userphone=18045982650, password=123456789)
    print("第" + str(a) + "写入:" + "李四" + str(a))
    db.session.add(ss)
    db.session.commit()

同时运行结果:
数据库中原本有一条张三;

img

img

tx.pyrx.py同时运行的时候,tx新写入数据库的数据无法被rx读到,只有重新运行rx时才能读到最新的数据,怎样才能解决两个程序同时运行,rx还能读取到数据库中所有数据