我在 MS Access 数据库中有 5 行,其中之一是序列号,其属性是自动编号我试图将此查询传递给数据库以进行插入。
int s= sta.executeUpdate("INSERT INTO stockDB VALUES('"+name+"','"+size+"','"+quantity+"','"+price+"')");
在数据库中,序列号是第一列,然后是名称、尺寸、数量和价格。
当我尝试插入时出现此错误:
[Microsoft][ODBC Microsoft Access Driver] Number of query values and destination fields are not the same.
我知道我应该把一些东西放在第一个但是我应该把它放在那里? 我试着把序列号放在最后,但错误是一样的。 我应该在查询中输入什么,以便 sql 接受它但仍会在数据库中生成自动编号?
最佳答案
你的 sql 查询是 wring 这样做
int s= sta.executeUpdate("INSERT INTO stockDB(name,size,quantity,price) VALUES('"+name+"','"+size+"','"+quantity+"','"+price+"')");
您不需要手动插入序列号,因为它会自动递增,但您必须指定要插入的其余列名和值,序列号值将自动插入作为其自动递增
关于java - 如何使用 java sql 查询 Netbeans 忽略数据库中的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23178781/