我在Sqlalchemy中创建了下表
class Summons_Wording(Base):
__tablename__ = 'Summons Wording'
id = Column(Integer, primary_key=True)
summons_wording = Column(String(205), nullable=False)
legislation = Column(String(100), nullable=False)
legislation_section = Column(String(15), nullable=False)
custom_wording_user_id = Column(Integer)
viewable = Column(Boolean, default=True)
我可以使用以下命令添加到表中
summons = Summons_Wording()
summons.summons_wording = summons_wording
summons.legislation = legislation
summons.legislation_section = legislation_section
user = session.query(User).first()
summons.custom_wording_user_id = user.id
summons.effective_date = datetime.today().date()
summons.viewable = False
session.add(summons)
session.commit()
这些更改显示在我的数据库浏览器(SQLite的DB浏览器)中,因此我知道它们正在被编写。但是,当我稍后尝试查询它们时,我没有得到刚创建的行。我有一些通过从服务器下载而填充的行,它们工作得很好。只有在本地创建了它们的行后,才能找到它。我在其他线程上读到它可能是主键问题。但是我直接从Sqlalchemy的站点获取了这些表的结构。同样,当我输入Summons_Wording .__ table__时,我得到的列“ id”显示为主键。另一个令人困惑的部分是,我在其他一些表中使用了这种格式,它们都可以正常工作。就是这个给我带来麻烦
有人有什么建议吗?
谢谢