Я заранее извиняюсь, если это плохо отформатировано;это довольно поздно для меня.
По сути, я использую Python с SQLAlchemy.Я пытаюсь сопоставить класс с таблицей БД PostgreSQL, используя Object Relational Mapper, декларативный стиль .
Согласно документации SQLAlchemy о типах данных , я долженбыть в состоянии использовать тип BigInteger
для представления потенциально больших целых чисел в базе данных, особенно потому, что я знаю, что PostgreSQL поддерживает тип данных BIGINT .
Итак, я пытаюсь объявить свой классвот так:
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, *Тип 1020 * существует, но, согласно Python, его нет.Что-то здесь мне не хватает?
Заранее спасибо за все ответы.