java - 用Java编写访问数据库?

标签 java sql ms-access-2007 ms-access-2010

我正在开发一个数据库项目,涉及向具有字段的学生表添加、编辑和删除注册表:

姓氏、姓名、身份证号、平均值、入门模式、职业和变化

在编辑框架中,我有一个字段,用户可以在其中输入学生的icnumber来编辑其数据,请求新数据并将其保存到“学生”数据结构中,然后使用新数据重新更新注册表:

String stmnt = "Insert Into Students (Last_names, Names, IcNumber, Average, " + 
        "Entry_mode, Career, Change) Values ('" + student.getLastNames() + 
        "', '" + student.getNames() + "', '" + student.getIcNumber() + "', " +
        student.getAverage() + ", '" + student.getEntry() + "', '" +
        student.getCareer() + "', '" + student.getChange() + "') " +
        "Where IcNumber = '" + field.getText() + "'";

statement.execute(stmnt);

我收到此错误消息:

[Microsoft][Microsoft Access ODBC 驱动程序]“查询输入必须至少包含一个表或查询。”

我在程序的添加注册表区域中尝试了类似的 SQL 指令,没有“Where”条件,效果很好,有人知道这个错误吗?

最佳答案

您应该使用子查询,首先是带有 WHERE 的 SELECT 部分,然后是 INSERT 部分 像这样的东西:

  if (cond){
             (SELECT.....)
                (INSERT INTO...)}

关于java - 用Java编写访问数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12907541/

相关文章:

java - Apache POI 不更新公式

java - getNext() 链表

java - 使用引用(临时变量)来操作LinkedList?

java - 伽罗瓦/计数器模式 (GCM/NoPadding) 未使用

sql - 当存在其他唯一字段时,为什么要使用自动递增的主键?

sql - 从 ActiveRecord 获取排名

sql - 如何阅读 Postgres 事务日志

xml - 将 xml 数据从 Web 导入 MS-Access 2007

php - 微软 Access : How does one insert NULL into DateTime field

SQL 按日期获取最后 n 个唯一条目