我得到了下一列的表格:Id, Name, Age, Class
我正在尝试像这样在数据库中插入新行:
INSERT INTO MyTable (Name, Age, Class)
VALUES (@name, @age, @class)
并得到一个例外:
"Index or primary key cannot contain a Null value."
问题是如何在不知道下一个主 ID 的情况下添加新行,或者有一种方法可以在另一个查询的帮助下从表中获取此 ID?
您可以将 ID 列的数据类型更改为 AutoNumber 而不是 Integer。
不确定 Access,但 MySQL 语法是:
INSERT INTO MyTable (Id, Name, Age, Class) VALUES (NULL, @name, @age, @class);
试试这个
INSERT INTO MyTable (id,Name, Age, Class)
VALUES ((select max(id)+1 from MyTable),@name, @age, @class)
请在 Mytable 中将“id”列设为自动编号,然后尝试
要不然
INSERT INTO MyTable (id,Name, Age, Class)
select max(id)+1,@name, @age, @class FROM MyTable