我尝试使用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
我的代码出了什么问题?任何帮助都是非常感谢的。在
你没有迭代结果。
sqlite3
命令行工具与Python代码不一样;Python代码总是打印结果,因为它是一个命令行工具,可以确保您不会被大量的结果集淹没。在然而,当用代码访问数据库时,库不能假定您希望将所有行打印给最终用户。你可能想对数据做些不同的事情。在
因此,您需要在光标上循环并打印每一行:
^{1}$您可能希望熟悉Python数据库API标准的工作原理;请四处搜索以获得一个好的教程。乍一看,this specific tutorial似乎涵盖了最重要的基础知识。在
相关问题 更多 >
编程相关推荐