我正在尝试使用sqlalchemy将数据上传到Postgres数据库。
我的模型课-:
class User(Base):
__tablename__ = "users"
id = Column(BIGINT, nullable=False , primary_key=True)
issuer_id = Column(Integer, ForeignKey('issuers.id'), nullable=False).....
我目前正在测试,因此我删除了数据并再次添加。
即使我正在删除所有记录,也要在151885
范围内生成ID,所以它应该从1
开始。为什么会这样?
答案 0 :(得分:1)
您似乎将IDENTITY
列用作PostgreSql中的主键。
这种类型的列会自动在记录的INSERT上为您的记录生成一个ID。由于此操作会自动生成ID,因此每次插入新记录时都会递增ID。
另一方面,当删除记录时,它不会减少ID。删除表中的所有记录后,它不会将ID重置为0或1。
有单独的查询来重置ID;但这是另一个问题。