sqlite3游标对象返回意外的resu

2024-06-16 16:21:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试使用python中的sqlite3模块在只有一列的表中执行数据库查找。该列包含以下格式的电话号码:

9545551212
???5551212个

下面是我在python中运行的:

import sqlite3
cti = '/home/user/test/cti.db'
conn = sqlite3.connect(cti)
c = conn.cursor()
c.execute('select * from ani_table_1 where number = 9545551212')
<sqlite3.Cursor object at 0x7f6b435316c0>

当我在sqlite3中运行完全相同的select语句时,我得到了预期的结果:

^{pr2}$

我使用的是python3.6.5和sqlite 3.7.17

我的代码出了什么问题?任何帮助都是非常感谢的。在


Tags: 模块testimport数据库homedb格式connect
1条回答
网友
1楼 · 发布于 2024-06-16 16:21:17

你没有迭代结果。sqlite3命令行工具与Python代码不一样;Python代码总是打印结果,因为它是一个命令行工具,可以确保您不会被大量的结果集淹没。在

然而,当用代码访问数据库时,库不能假定您希望将所有行打印给最终用户。你可能想对数据做些不同的事情。在

因此,您需要在光标上循环并打印每一行:

^{1}$

您可能希望熟悉Python数据库API标准的工作原理;请四处搜索以获得一个好的教程。乍一看,this specific tutorial似乎涵盖了最重要的基础知识。在

相关问题 更多 >