gpt4 book ai didi

java - 向表中插入数据

转载 作者:行者123 更新时间:2023-11-30 07:28:27 25 4
gpt4 key购买 nike

晚上好。

我正在做一个将数据插入 Access 数据库表的基本练习,代码中有一个语法错误,我正在努力查明。

希望能得到一些关于语法问题所在的帮助。

报错如下java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] 查询值和目标字段的数量不相同。

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();
}

最佳答案

您在查询中遗漏了几个单引号,因此地址和类型被读取为单个值。将您的 queryString 行替换为:

String queryString = "INSERT INTO Artists(ID, Name, Address, Type) VALUES (" + ID + ", '" + name + "', '" + address + "', '" + type + "')";

这应该可以解决问题。

关于java - 向表中插入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9214676/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com