【发布时间】:2017-03-09 21:00:14
【问题描述】:
我有一个模型类:
class User(PBase):
__tablename__ = "users"
id = Column(Integer, primary_key=True)
name = Column(String, nullable=False, unique=True)
现在根据文档,当 Integer 类型与 primary_key 一起使用时,会自动生成一个序列。这是输出表
id | integer | not null default nextval('users_id_seq'::regclass)
如您所见,在修饰符列中生成了一个默认序列。
但是当我尝试添加第二个用户时,主键约束出现完整性错误。
IntegrityError) duplicate key value violates unique constraint "users_pkey"
DETAIL: Key (id)=(1) already exists.
这里有什么问题?
编辑:添加用户的代码,快照
def create(name, email, roleid)
with self._session_context() as session:
user = User(name, email, roleid)
session.add(user)
session.commit()
【问题讨论】:
-
您是否在正确的时间提交事务?
标签: python postgresql sqlalchemy