【发布时间】:2010-03-02 16:01:48
【问题描述】:
此查询有效:
item = db.GqlQuery("SELECT * FROM Item WHERE CSIN = 13")[0]
虽然如果没有返回结果,它会在我的脸上炸毁。 (我怎样才能解决这个问题?当我想要最多一次迭代时,for 循环似乎很可疑。)
此查询不起作用:
item = db.GqlQuery("SELECT * FROM Item WHERE CSIN = :1", CSIN)[0]
CSIN 是一个代表数字的字符串。我收到此错误:
Traceback (most recent call last):
File "C:\Program Files\Google\google_appengine\google\appengine\ext\webapp\__init__.py", line 507, in __call__
handler.get(*groups)
File "path\to\src\Main.py", line 42, in get
item = db.GqlQuery("SELECT * FROM Item WHERE CSIN = :1", CSIN)[0]
File "C:\Program Files\Google\google_appengine\google\appengine\ext\db\__init__.py", line 1717, in __getitem__
raise IndexError('The query returned fewer than %d results' % (arg+1))
IndexError: The query returned fewer than 1 results
我在这里做错了什么?
【问题讨论】:
标签: python google-app-engine google-cloud-datastore