SQL Alchemy使用现有主键创建新对象

时间:2017-10-03 09:51:25

标签: python postgresql orm sqlalchemy

我正在尝试在sqlalchemy中创建新对象但是因为该ID已经存在而获得完整性错误。以下是我的模特。

class RFBOpportunityDetail(Base):
    __tablename__ = 'rfb_opportunity_detail'

    id = Column(Integer, primary_key=True)
    name = Column(String)
    code = Column(String, unique=True)

我正在使用postgreSQL数据库,该表已经有条目。下面是创建新对象的代码。

models.RFBOpportunityDetail(name=name, code=code)

对于使用SQLalchemy或PostgreSQL创建新对象,我应该知道什么?

错误

sqlalchemy.exc.IntegrityError: (psycopg2.IntegrityError) duplicate key value violates unique constraint "fbo_all_opportunity_detail_pkey"
DETAIL:  Key (id)=(221418) already exists

1 个答案:

答案 0 :(得分:2)

发现一个解决方案似乎与postgres有一些问题,因为我通过sql导入数据。我用下面的命令来解决这个问题

SELECT setval('rfb_opportunity_detail_id_seq', MAX(id)) FROM rfb_opportunity_detail;