如果格式不正确,我谨此致歉;对我来说已经很晚了.
基本上,我将Python与sqlAlchemy结合使用.我正在尝试使用Object Relational Mapper, declarative style将类映射到Postgresql数据库表.
根据SQLAlchemy’s documentation on data types,我应该能够使用类型BigInteger来表示数据库中潜在的大整数,尤其是因为我知道PostgreSQL supports the BIGINT data type.
因此,我尝试像这样声明我的班级:
import sqlalchemy
from sqlalchemy import Column, BigInteger, Text, Sequence, Boolean
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class Account(Base):
__tablename__ = 'accounts'
__Metadata__ = Base.Metadata
id = Column(BigInteger, Sequence('id_seq'), unique=True, nullable=False)
email = Column(Text(32), unique=True, nullable=False)
def __init__(self, email):
self.email = email
但是,当我尝试使用此文件时,会遇到以下问题:
Traceback (most recent call last):
File "sqltest02.py", line 9, in <module>
from account import Account
File "/home/pdusen/prog/account.py", line 2, in <module>
from sqlalchemy import Column, BigInteger, Text, Sequence, Boolean
ImportError: cannot import name BigInteger
因此,根据sqlAlchemy的文档,存在BigInteger类型,但根据python,则不存在.这里有什么我想念的吗?
在此先感谢您提供所有答案.
解决方法:
至少从sql Alchemy 0.6起已支持此功能.如评论中所述,实际问题是版本太旧.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。