'id' 值不会在 MS 上使用 pydobc 自动递增 SQL

'id' value not incrementing automatically using pydobc on MS SQL

我收到此错误:

pyodbc.IntegrityError: ('23000', "[23000] [Microsoft][ODBC SQL Server Driver][SQL Server]Cannot insert the value NULL into column 'id', table 'XXXX.dbo.logs'; column does not allow nulls. INSERT fails. (515) (SQLExecDirectW); [23000] [Microsoft][ODBC SQL Server Driver][SQL Server]The statement has been terminated. (3621)")

当我想将新行推送到 table:

时会发生这种情况
   sql = ''' INSERT INTO logs(name,ip,page,socket,date)
              VALUES(?,?,?,?,?) '''

数据库托管在 Azure SQL 数据库上。 这是我用来创建 table:

的代码
sql_create_table = """CREATE TABLE XXXX.dbo.logs 
                            (
                                id INT IDENTITY(1,1) NOT NULL,
                                name VARCHAR(100) NOT NULL,
                                ip VARCHAR(20) NOT NULL,
                                page VARCHAR(150)  NOT NULL,
                                socket VARCHAR(200) NOT NULL,
                                date VARCHAR(30) NOT NULL
                            ); """

为什么会这样?

尝试在"Identity..."之后和“NOT NULL”之前添加“PRIMARY KEY”