微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python-SQLAlchemy中的BigInteger吗?

如果格式不正确,我谨此致歉;对我来说已经很晚了.

基本上,我将PythonsqlAlchemy结合使用.我正在尝试使用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 举报,一经查实,本站将立刻删除。

相关推荐