<type 'exceptions.SyntaxError'>(无效 table/column 名称 "Date" 是 "All" 保留 SQL/NOSQL 关键字
<type 'exceptions.SyntaxError'>(Invaild table/column name "Date" is a "All" reserved SQL/NOSQL keyword
db.define_table('Bill',
Field('Bill_NO', 'integer', requires=IS_NOT_EMPTY()),
Field('Date', 'date'),
Field('Customer_ID', requires=IS_NOT_EMPTY()),
Field('Name', requires=IS_NOT_EMPTY()),
Field('Address', 'text', length=255),
Field('Phone', requires=IS_NOT_EMPTY()),
Field('Item', 'list', requires=IS_NOT_EMPTY()), Field('Price', 'list`', requires=IS_NOT_EMPTY()),
Field('Grand_Total', 'double', requires=IS_NOT_EMPTY())
#auth.signature
)
我输入了上面的代码,在模型中单击 db.Bill 后出现以下错误,
(无效 table/column 名称 "Date" 是 "All" 保留 SQL/NOSQL 关键字
所以帮我摆脱这个错误。谢谢。
因为 Date 是 SQL 数据库中的一种数据类型,如果您想将其作为您的列名,请将其替换为 [Date]
如果您想在 web2py 代码中使用 Date
但不介意数据库使用其他名称,您可以这样做:
Field('Date', 'date', rname='bill_date')
在这种情况下,数据库将使用bill_date
作为列名(因此避免保留关键字错误),但在您的web2py代码中,您仍然可以引用db.Bill.Date
。
db.define_table('Bill',
Field('Bill_NO', 'integer', requires=IS_NOT_EMPTY()),
Field('Date', 'date'),
Field('Customer_ID', requires=IS_NOT_EMPTY()),
Field('Name', requires=IS_NOT_EMPTY()),
Field('Address', 'text', length=255),
Field('Phone', requires=IS_NOT_EMPTY()),
Field('Item', 'list', requires=IS_NOT_EMPTY()), Field('Price', 'list`', requires=IS_NOT_EMPTY()),
Field('Grand_Total', 'double', requires=IS_NOT_EMPTY())
#auth.signature
)
我输入了上面的代码,在模型中单击 db.Bill 后出现以下错误, (无效 table/column 名称 "Date" 是 "All" 保留 SQL/NOSQL 关键字 所以帮我摆脱这个错误。谢谢。
因为 Date 是 SQL 数据库中的一种数据类型,如果您想将其作为您的列名,请将其替换为 [Date]
如果您想在 web2py 代码中使用 Date
但不介意数据库使用其他名称,您可以这样做:
Field('Date', 'date', rname='bill_date')
在这种情况下,数据库将使用bill_date
作为列名(因此避免保留关键字错误),但在您的web2py代码中,您仍然可以引用db.Bill.Date
。