有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何使用正确的语法在Oracle数据库中插入值

我写了一个问题

sql = "INSERT INTO TABLE(COLUMN1, COLUMN2, COLUMN3, COLUMN4, COLUMN5) " +
      "VALUES('" + VAR1+ "','" + VAR2 + "','" + VAR3 + "','" + " '" + VAR4 + "','" + "VAR5 + );";

其中var5是一个字符串

当我尝试插入到表中并使用上面的SQL时,我得到了错误

java.sql.SQLSyntaxErrorException: ORA-00917 : no comma

错在哪里


共 (3) 个答案

  1. # 1 楼答案

    您在VAR5周围的单引号和双引号不正确,而且字符串中不需要;

    sql = "INSERT INTO TABLE(COLUMN1, COLUMN2, COLUMN3, COLUMN4, COLUMN5) " +
          "VALUES('" + VAR1+ "','" + VAR2 + "','" + VAR3 + "','" + " '" + VAR4 + "','" + VAR5 + "')";
    
  2. # 2 楼答案

    谢谢你的帮助

    正确的语法是:

    sql = "INSERT INTO TABLE(COLUMN1, COLUMN2, COLUMN3, COLUMN4, COLUMN5) " +
          " VALUES('" + VAR1+ "','" + VAR2+ "','" + VAR3+ "','" + VAR4+ "','" + VAR5+ "')";
    
  3. # 3 楼答案

    你的引语错了:

    sql = "INSERT INTO TABLE(COLUMN1, COLUMN2, COLUMN3, COLUMN4, COLUMN5) " +
          "VALUES('" + VAR1 + "','" + VAR2 + "','" + VAR3 + "','" + VAR4 + "','" + VAR5 + ");";
    

    倒数第二个引号必须放在加号和括号之间,而不是放在VAR5之前。此外,在VAR4之前,您的单次报价翻了一番(归功于DevilsHnd)