Python 如何自动进行项目id编号?

Python 如何自动进行项目id编号?,python,postgresql,Python,Postgresql,我正在尝试向SQL数据库中插入一些数据,问题是我对此非常熟悉。所以主要的问题是如何对表中的所有项目进行排序?我有三件主要的东西:身份证、证件、时间。但在这个“插入”中,我必须手动键入id。如何使系统自动创建数字id编号? 以下是插入代码: postgres_insert_query = """ INSERT INTO Vartotojai (ID, CARNUM, TIME) VALUES (%s,%s,%s)""" record_to_insert = (id, car_numb,

我正在尝试向SQL数据库中插入一些数据,问题是我对此非常熟悉。所以主要的问题是如何对表中的所有项目进行排序?我有三件主要的东西:身份证、证件、时间。但在这个“插入”中,我必须手动键入id。如何使系统自动创建数字id编号? 以下是插入代码:

   postgres_insert_query = """ INSERT INTO Vartotojai (ID, CARNUM, TIME) VALUES (%s,%s,%s)"""
   record_to_insert = (id, car_numb, Reg_Tikslus_Laikas)
   cursor.execute(postgres_insert_query, record_to_insert)

   connection.commit()
   count = cursor.rowcount
       print (count, "Record inserted successfully into mobile table")


您可以将
ID
的数据类型更改为
serial
,这是一个自动递增的整数。这意味着在插入数据库时不必手动输入ID


阅读有关数据类型序列的更多信息:

您可以在
ID
字段中使用。作为快捷方式,将列类型定义为
serial
bigserial
,以便我需要再次创建表?我需要如何将ID更改为串行?您只需将ID的数据类型更改为串行,您可以通过更改表来完成此操作。您可以尝试类似于
ALTER TABLE Vartotojai ALTER COLUMN ID TYPE SERIAL
的操作。错误:TYPE“SERIAL”不存在SQL state:42704在这种情况下,您可以尝试创建一个序列,如post中所述。我对bigserial进行了ID设置,但现在:输入车号:GAG123 Match无法将记录插入移动表重复键值违反唯一约束“vartojai_pkey”详细信息:键(id)=(1)已存在。