如何通过pyodbc将查询结果的单个字段值存入变量并正常输出?
提取pyodbc查询结果中的单个字段值
你看到的('Alex', )是pyodbc返回的元组类型结果——哪怕查询只有一个字段,每一行数据也会被包装成元组。要提取其中的姓名并存入变量name,可以用以下几种方法:
方法1:通过元组索引取值
直接访问元组的第一个元素(索引为0):
cursor.execute('Select Name from Customers Where Id = 2') for row in cursor: name = row[0] print(name) # 输出:Alex
方法2:用fetchone()获取单行结果
如果确定查询只会返回一行数据,用fetchone()可以跳过循环,更简洁:
cursor.execute('Select Name from Customers Where Id = 2') row = cursor.fetchone() # 先判断是否查询到结果,避免无数据时报错 if row: name = row[0] print(name) # 输出:Alex
方法3:元组解包
在循环中直接对元组进行解包(注意变量后的逗号,表示解包单个元素的元组):
cursor.execute('Select Name from Customers Where Id = 2') for name, in cursor: print(name) # 输出:Alex
内容的提问来源于stack exchange,提问作者AlexDeSouza
相关产品推荐
相关产品推荐

