无法找出Web2py票证错误这很奇怪

2024-04-26 03:47:36 发布

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

我对Web2py是个新手,我无法理解罚单抛出的错误。有人能解释一下这个错误以及它为什么会发生吗?你知道吗

Ticket ID
127.0.0.1.2016-05-28.15-45-10.493c5f3c-e5f2-4034-8e82-69637b1fcc35

<type 'exceptions.SyntaxError'> invalid table/column name "size" is a "ALL" reserved SQL/NOSQL keyword

Version
web2py™ Version 2.12.1-stable+timestamp.2015.08.07.07.22.06

Traceback (most recent call last):
  File "C:\Users\sharankumar\Desktop\New\gluon\restricted.py", line 227, in restricted
    exec ccode in environment
  File "C:/Users/sharankumar/Desktop/New/applications/MyLogin/models/db.py", line 232, in <module>
    format='%(name)s')
  File "C:\Users\sharankumar\Desktop\New\gluon\packages\dal\pydal\base.py", line 817, in define_table
    table = self.lazy_define_table(tablename,*fields,**args)
  File "C:\Users\sharankumar\Desktop\New\gluon\packages\dal\pydal\base.py", line 834, in lazy_define_table
    table = table_class(self, tablename, *fields, **args)
  File "C:\Users\sharankumar\Desktop\New\gluon\packages\dal\pydal\objects.py", line 351, in __init__
    check_reserved(field_name)
  File "C:\Users\sharankumar\Desktop\New\gluon\packages\dal\pydal\base.py", line 519, in check_reserved_keyword
    'invalid table/column name "%s" is a "%s" reserved SQL/NOSQL keyword' % (name, backend.upper()))
SyntaxError: invalid table/column name "size" is a "ALL" reserved SQL/NOSQL keyword

Tags: nameinpynewpackageslinetableusers
1条回答
网友
1楼 · 发布于 2024-04-26 03:47:36

db.define_table()中,似乎您试图创建一个名为“size”的字段,这是不允许的,因为它是SQL保留字。您应该更改字段名或使用“rname”参数为要使用的数据库指定其他名称:

    Field('size', rname='object_size', ...)

使用上面的代码,您可以在所有Python代码中使用名称“size”,但是数据库实际上会创建一个名为“object\u size”的字段。你知道吗

相关问题 更多 >