将jdbc INSERT INTO语句失败到MS Access数据库

时间:2011-02-16 16:03:20

标签: sql ms-access jdbc

statement.executeUpdate("INSERT INTO countrylookup (Country, DialCode) VALUES('Iran', '957')")

运行此语句不会在控制台中输出错误,但是当我检查数据库时,没有更新/插入。这可能是什么原因?

对数据库本身的访问是成功的,并且使用诸如SELECT * FROM countrylookup之类的语句获取值成功。

我尝试了preparedStatement方法以及完全相同的结果。执行命令时文件未打开。

更新:Stacktrace :(瑞典语中的第一行表示“INSERT INTO-expression包含以下未知字段名称:'Pa_RaM000'。请检查名称是否正确拼写,然后重试。)

Exception in thread "main" java.sql.SQLException: [Microsoft][Drivrutin f?r ODBC Microsoft Access] INSERT INTO-uttrycket inneh?ller f?ljande ok?nda f?ltnamn: 'Pa_RaM000'. Kontrollera att namnet ?r r?ttstavat och f?rs?k igen.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLExecute(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcPreparedStatement.execute(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcPreparedStatement.executeUpdate(Unknown Source)
at MDBAccessor.insertValueIntoField(MDBAccessor.java:43)
at TestRunner.main(TestRunner.java:28)

2 个答案:

答案 0 :(得分:1)

拨码是否为数字?如果是,请从值中删除引号。

VALUES('Iran', 957)

答案 1 :(得分:0)

为了使INSERT INTO语句实际反映在数据库中,您必须调用connection.commit(),然后调用connection.close()。另一个类似的线程描述了这个:Java General Error On Insert...???