gpt4 book ai didi

python - 为什么 MySQL 会执行返回 None?

转载 作者:IT王子 更新时间:2023-10-28 23:49:07 25 4
gpt4 key购买 nike

我正在尝试使用 Python 的 (3.4) MySQL 模块和以下代码查询本地 MySQL 数据库:

class databases():

def externaldatabase(self):

try:
c = mysql.connector.connect(host="127.0.0.1", user="user",
password="password", database="database")
if c.is_connected():
c.autocommit = True
return(c)
except:
return(None)
d = databases().externaldatabase()
c = d.cursor()
r = c.execute('''select * from tbl_wiki''')
print(r)
> Returns: None

据我所知,连接成功,数据库由几行组成,但查询总是返回无类型。

MySQL执行函数返回None的实例有哪些?

最佳答案

查询执行没有返回值。

您需要遵循的模式是:

cursor creation;
cursor, execute query;
cursor, *fetch rows*;

或者在 python 中:

c = d.cursor()

c.execute(query) # selected rows stored in cursor memory

rows = c.fetchall() # get all selected rows, as Barmar mentioned
for r in rows:
print(r)

还有一些数据库模块允许您使用 for...in 模式遍历游标,但对 mysql 进行三重检查。

关于python - 为什么 MySQL 会执行返回 None?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30421466/

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