MySQL 连接器游标说明
MySQL Connector Cursor Description
我正在尝试使用 MySQL 连接器在结果前面插入过程输出的列标题。
我的代码目前是:
import mysql.connector
from mysql.connector import errorcode
cnx = mysql.connector.connect(user='###', password='###',
host='###',
port='###',
database='new_schema')
if cnx.is_connected():
print('Connection Established.')
else:
print('Connection Failed.')
def call_new_carer_report():
cur = cnx.cursor()
cur.callproc('new_carer_report')
cur.stored_results()
for result in cur.stored_results():
global results
results = result.fetchall()
header = [i[0] for i in cur.description]
rows = [list(i) for i in cur.fetchall()]
rows.insert(0, header)
cur.close()
我使用 results
正确收到输出,但在线收到错误:
header = [i[0] for i in cur.description]
哪个州:
header = [i[0] for i in cur.description]
TypeError: 'NoneType' object is not iterable
如有任何帮助,我们将不胜感激。
终于找到我哪里出错了。
新功能代码为:
def call_new_carer_report():
cur1 = cnx.cursor()
cur1.callproc('new_carer_report')
cur1.stored_results()
for result in cur1.stored_results():
global results1
results1 = result.fetchall()
header1 = [i[0] for i in result.description]
rows1 = [list(i) for i in results1]
rows1.insert(0, header1)
print(rows1)
cur1.close()
我意识到我试图从 Cursor 对象而不是存储的结果中获取描述。
此错误 "TypeError: 'NoneType' object is not iterable" 很可能是由于查询中的 SQL 语句不正确。
我正在尝试使用 MySQL 连接器在结果前面插入过程输出的列标题。
我的代码目前是:
import mysql.connector
from mysql.connector import errorcode
cnx = mysql.connector.connect(user='###', password='###',
host='###',
port='###',
database='new_schema')
if cnx.is_connected():
print('Connection Established.')
else:
print('Connection Failed.')
def call_new_carer_report():
cur = cnx.cursor()
cur.callproc('new_carer_report')
cur.stored_results()
for result in cur.stored_results():
global results
results = result.fetchall()
header = [i[0] for i in cur.description]
rows = [list(i) for i in cur.fetchall()]
rows.insert(0, header)
cur.close()
我使用 results
正确收到输出,但在线收到错误:
header = [i[0] for i in cur.description]
哪个州:
header = [i[0] for i in cur.description]
TypeError: 'NoneType' object is not iterable
如有任何帮助,我们将不胜感激。
终于找到我哪里出错了。
新功能代码为:
def call_new_carer_report():
cur1 = cnx.cursor()
cur1.callproc('new_carer_report')
cur1.stored_results()
for result in cur1.stored_results():
global results1
results1 = result.fetchall()
header1 = [i[0] for i in result.description]
rows1 = [list(i) for i in results1]
rows1.insert(0, header1)
print(rows1)
cur1.close()
我意识到我试图从 Cursor 对象而不是存储的结果中获取描述。
此错误 "TypeError: 'NoneType' object is not iterable" 很可能是由于查询中的 SQL 语句不正确。