gpt4 book ai didi

python - 将查询提交到sqlite时,为什么IPython无法返回具有多个字段的记录?

转载 作者:行者123 更新时间:2023-12-03 18:41:15 24 4
gpt4 key购买 nike

我试图在python脚本中向sqlite数据库写一个简单的查询。为了测试我的参数是否正确,我尝试从ipython命令行运行查询。它看起来像这样:

import sqlite3
db = 'G:\path\to\db\file.sqlite'
conn = sqlite3.connect(db)
results = conn.execute('SELECT * FROM studies').fetchall()


由于某种原因,我的结果完全空白。然后我尝试了另一个测试查询:

results = conn.execute('SELECT id FROM studies').fetchall()


哪个正确返回。我发现星号[错误,请参阅下面的第二次更新]存在问题,因此我尝试从默认python命令行查询“ SELECT * FROM Studies”查询。瞧,它正确返回了。我尝试了所有正常的方法来使星号转义,只有各种各样的错误消息才能解决。有什么方法可以在IPython中运行此查询吗?



编辑:对不起,我错误地认为IronPython和IPython是相同的。我的意思是IPython命令行,而不是IronPython框架。



EDIT2:好的,事实证明星号确实可以正常工作,如以下成功查询所示:

'SELECT COUNT(*) FROM studies'


从这里发布的建议中可以看出,尝试返回具有多个字段的记录会导致错误结果,即:

'SELECT field1,field2 FROM studies'


仍然导致记录被返回。我相应地更改了问题的标题。

最佳答案

这是SQL。 IronPython与查询的处理几乎没有关系。您是否使用了不寻常的字符编码? (即不是UTF-8或ASCII)?

如果您SELECT id,fieldname,fieldname FROM studies会发生什么(换句话说,模拟“ *”的作用。)

关于python - 将查询提交到sqlite时,为什么IPython无法返回具有多个字段的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1133604/

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