【问题标题】:My query is giving following error,Unexpected token WHERE我的查询给出以下错误,Unexpected token WHERE
【发布时间】:2019-07-26 00:01:11
【问题描述】:

我正在使用 sql 在 java 中工作。每当执行此查询时,它都会给我标题中提到的错误

      try(PreparedStatement statement = conn.prepareStatement("INSERT INTO student_signup(q" + strId + ")" + "WHERE student_email="+email+"VALUES(?)")) {
        statement.setString(1, SelectedOption);

        statement.executeUpdate();


    statement.close();

对于一些代码背景 这里

  int questionID=1;
  String strId = Integer.toString(questionID);
  String email = signInForm.getTxtEmail().getText();

【问题讨论】:

  • 您在 WHEREVALUES 之前缺少一个空格。
  • 所以只是空间问题?我的意思是查询好吗?
  • 哪个“INSERT”命令需要一个“WHERE”子句?
  • INSERTWHERE?
  • @newprogrammer :不,现在还不是,看看下面的答案。

标签: java sql ms-access


【解决方案1】:

INSERT 插入新行。我认为您想更改现有行中的值。为此,请使用UPDATE。像这样的:

UPDATE student_signup
    SET strID = ?
    WHERE student_email = ?;

【讨论】:

    【解决方案2】:

    INSERT 永远不会与 WHERE 子句一起使用 如果您想更改数据库中预先存在的记录的值,您应该尝试在 UPDATE 子句后加上 WHERE 条件。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-22
      • 2017-05-02
      • 2016-10-01
      • 2020-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多