我正在尝试使用 python 创建一个数据库来执行 SQL 命令(对于 CS50x 问题集 7)。
我创建了一个id字段设置为AUTO_INCREMENT的表,但数据库中的字段仅由值填充NULL。我只希望它有一个从 1 开始递增的 id。
我已经尝试在线搜索以查看我是否使用了正确的语法并且找不到任何明显的东西,我也找不到其他有类似问题的人,所以任何帮助将不胜感激。
这是我正在运行的 SQL 命令:
# For creating the table
db.execute("""
CREATE TABLE students (
id INTEGER AUTO_INCREMENT PRIMARY KEY,
first_name VARCHAR(255) NOT NULL,
middle_name VARCHAR(255) DEFAULT (NULL),
last_name VARCHAR(255) NOT NULL,
house VARCHAR(10),
birth INTEGER
);
""")
# An example insert statement
db.execute("""
INSERT INTO students (
first_name,
middle_name,
last_name,
house,
birth
)
VALUES (
?, ?, ?, ?, ?
);
""", "Harry", "James", "Potter", "Gryffindor", 1980)
这是数据库架构的屏幕截图,如下所示phpliteadmin:
这是生成的数据库的屏幕截图:

