gpt4 book ai didi

python - 从多个连接中选择特定的mysql连接

转载 作者:行者123 更新时间:2023-11-29 22:01:04 25 4
gpt4 key购买 nike

代码:

def before_request():
try:
g.db = mysql.connector.connect(user=user1,password=pass1, host=hos1,
database=testdb1)
g.db1 = mysql.connector.connect(user=user2,password=pass2, host=host2,
database=testdb2)

@app.route('/user/<db>', methods=['POST'])
def insert(db):
body=request.json
try:
#Http request for inserting data into testdb1:"curl 'http://localhost:5000/user/**testdb1**' testdb1 is the database".
same way ##Http request for inserting data into testdb2:"curl 'http://localhost:5000/user/**testdb2**' testdb2 is 2nd database".

#code for inserting data into database(testdb1/testdb2) according to http request.

一切正常,但问题是当我发送(http 请求)时假设将数据插入到 testdb1 中。然后打开两个数据库的连接。但我希望只打开请求的数据库连接,而不是同时打开两个数据库连接。

问题:1.我需要进行哪些更改才能只打开一个连接?2.是否有可能将g.db作为连接变量,它存储连接以及http请求何时到达数据库。假设对于testdb1,那么只有该连接被打开?

最佳答案

你应该这样设置。当您启动服务器时,您会建立两个全局连接来执行某事或类似的操作:例如,

conn1 = None
conn2 = None


def connection1():
global conn1
if conn1 is None:
conn1 = ...
return conn1

如果你想要sql,

 from initConnection import conn1, conn2
conn1.execute(sql) or conn2.execute()

只有一个连接 1 或连接 2 正在使用。

关于python - 从多个连接中选择特定的mysql连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32643009/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com