我对用 Java 开发 Web 应用程序还很陌生。我刚刚连接了数据库,如图所示,我的 ID_Patent 是 auto_increment,但在 Netbeans 中它看起来是生成的。
INSERT INTO sys.patient values('5','elif','nil','er','elif@hotmail.com','11111111111','1234a','istanbul')
插入的新记录需要这个值,而我希望它采用
INSERT INTO sys.patient values('elif','nil','er','elif@hotmail.com','11111111111','1234a','istanbul')
并自动递增并将 id 指定为 1,2,3,4...等。
我该如何解决这个问题? 谢谢
最佳答案
如果您希望创建一个插入查询,其中您不想提供 ID,并且数据库应根据表定义自动生成它,那么您需要创建插入查询,其中必须提及列名称。 示例
INSERT INTO <TABLENAME>(COLUMN1, COLUMN2, COLUMN3, COLUMN4)
VALUES
(VALUE1,VALUE2, VALUE 3,VALUE 4);
所以在你的情况下应该是
INSERT INTO PATIENT(FirstName,MiddleName,LastName,E_mail)
values
('myname','mymiddlename','mylastname','myemailid');
列名及其值的顺序非常重要。它们应该完全匹配。如果您没有为其中一列提供值,并且它是自动递增的,那么数据库将为其添加一个值,否则它将添加空值。
关于java - mySQL 中的 ID 值是 auto_increment 但似乎是在 netbeans 中生成的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47800590/