我正在使用Netbeans和Microsoft Access。 在Microsoft Access中,我有5个数据字段,其中一个是ID ,它是自动编号,但是当我从Java使用此查询时。

int s= sta.executeUpdate("INSERT INTO stockDB VALUES('"+name+"','"+size+"','"+quantity+"','"+price+"')");

它显示错误:

java.sql.SQLException:[Microsoft] [ODBC Microsoft Access驱动程序]查询值和目标字段的数量不同。

但是问题在于,最后一个字段是自动ID ,但是我必须向数据库发送查询,我应该在最后一个字段中添加什么查询才能使其正常工作,并且不会打扰数据库中的ID字段?

===============>>#1 票数:1

如果您使用此格式的Insert语句而不是当前语句,将很有用:

INSERT INTO <table name> (<list of field name>) VALUES (<list of field values>)

当您具有IDENTITYAUTO-NUMBER字段以及某些字段具有默认值时,使用此格式很有用。

作为猜测; 您的声明应为:

"INSERT INTO (name, size, quantity, price) stockDB VALUES('"+name+"','"+size+"','"+quantity+"','"+price+"')"

  ask by user3551620 translate from so

未解决问题?本站智能推荐: