Java 向表中插入数据
晚上好 我正在做一个将数据插入Access数据库表的基本练习,代码中存在一个语法错误,我正在努力找出它 他希望能在这方面得到一些帮助,看看语法问题在哪里 错误如下所示 java.sql.SQLException:[Microsoft][ODBC Microsoft Access驱动程序]查询值和目标字段的数目不相同Java 向表中插入数据,java,jdbc,Java,Jdbc,晚上好 我正在做一个将数据插入Access数据库表的基本练习,代码中存在一个语法错误,我正在努力找出它 他希望能在这方面得到一些帮助,看看语法问题在哪里 错误如下所示 java.sql.SQLException:[Microsoft][ODBC Microsoft Access驱动程序]查询值和目标字段的数目不相同 public void addData(String ID, String name, String address, String type) throws SQLExceptio
public void addData(String ID, String name, String address, String type) throws SQLException
{
int rowsadded;
Statement statement = conn.createStatement();
String queryString = "INSERT INTO Artists(ID, Name, Address, Type) VALUES (" + ID + ", '" + name + "', '" + address + ", " + type + "')";
System.out.println(queryString);
System.out.println(ID + "(ID) added to the database");
rowsadded = statement.executeUpdate(queryString);
System.out.println("Rows updated = " + rowsadded);
}
方法调用如下所示
Insertingdata example;
try
{
example = new Insertingdata();
example.addData("15", "Bob Dylan", "Los Angeles", "Folk");
}
catch(SQLException se)
{
se.printStackTrace();
}
catch(ClassNotFoundException ce)
{
ce.printStackTrace();
}
您在查询中遗漏了几个单引号,因此地址和类型被读取为单个值。将查询字符串行替换为:
String queryString = "INSERT INTO Artists(ID, Name, Address, Type) VALUES (" + ID + ", '" + name + "', '" + address + "', '" + type + "')";
这应该可以解决问题。您在查询中遗漏了几个单引号,因此地址和类型被读取为单个值。将查询字符串行替换为:
String queryString = "INSERT INTO Artists(ID, Name, Address, Type) VALUES (" + ID + ", '" + name + "', '" + address + "', '" + type + "')";
这应该可以解决问题。(+1)为了避免此类错误,请使用预先准备好的语句!(+1)为避免此类错误,请使用准备好的语句!