Java 如何在JDBC中使用自动编号进行批插入?
以前我有一些MS Access的经验,现在我在用Java做JDBC。在MS Access数据库中,我可以有一个自动编号字段,这对于生成主键非常方便。我想用Java做同样的事情。然而,在SO(当然还有谷歌)挖掘了几天之后,我能找到的只是一些非常方便的方法。其中之一是首先获取表中最大的主键(比如N),然后插入键为(N+1)的最新记录。我想这是可行的,但效率不高。有这样的天才能帮助我吗 MySQL具有类似的功能:自动增量。只需将其添加到您的关键字段中,您就完成了。MySQL具有类似的功能:自动递增。只需将其添加到您的关键字段中,您就完成了。不确定您卡在了哪个位上 但在MySql中,自动编号基本上是Java 如何在JDBC中使用自动编号进行批插入?,java,mysql,jdbc,autonumber,Java,Mysql,Jdbc,Autonumber,以前我有一些MS Access的经验,现在我在用Java做JDBC。在MS Access数据库中,我可以有一个自动编号字段,这对于生成主键非常方便。我想用Java做同样的事情。然而,在SO(当然还有谷歌)挖掘了几天之后,我能找到的只是一些非常方便的方法。其中之一是首先获取表中最大的主键(比如N),然后插入键为(N+1)的最新记录。我想这是可行的,但效率不高。有这样的天才能帮助我吗 MySQL具有类似的功能:自动增量。只需将其添加到您的关键字段中,您就完成了。MySQL具有类似的功能:自动递增。只
CREATE TABLE table_name
(
id INTEGER AUTO_INCREMENT PRIMARY KEY ,
Value INTEGER
)
要从Java之类的东西中使用它,只需在sql中跳过它即可
Insert table_name(Value) Values(10)
不确定你被卡在了哪一块 但在MySql中,自动编号基本上是
CREATE TABLE table_name
(
id INTEGER AUTO_INCREMENT PRIMARY KEY ,
Value INTEGER
)
要从Java之类的东西中使用它,只需在sql中跳过它即可
Insert table_name(Value) Values(10)
这与
JDBC
没有真正的关系
您必须在mysql
中创建具有自动递增列的表(查看INTEGER auto\u INCREMENT主键以了解列规范)
然后在JDBC
中插入数据时忽略该列(就像它不存在一样),数据库将处理它 这实际上与JDBC
无关
您必须在mysql
中创建具有自动递增列的表(查看INTEGER auto\u INCREMENT主键以了解列规范)
然后在JDBC
中插入数据时忽略该列(就像它不存在一样),数据库将处理它 我认为,如果您在没有指定主键(在数据库中设置为AutoNumber)的情况下通过JDBC启动insert查询,它应该使用自动生成的键插入新记录。我相信您希望插入记录,然后获取生成的键,如果您是这样的话,我想你应该忽略批处理模式。难怪没有人回答两个类似的问题,我是个错过这个的白痴。非常感谢。我认为,如果您在没有指定主键(在数据库中设置为AutoNumber)的情况下通过JDBC启动insert查询,它应该使用自动生成的键插入新记录。我相信您希望插入记录,然后获取生成的键,如果您是这样的话,我想你应该忽略批处理模式。难怪没有人回答两个类似的问题,我是个错过这个的白痴。非常感谢。知道了。非常感谢你!!知道了。非常感谢你!!