Java SQL插入具有自动增量ID的行

时间:2018-07-06 01:09:31

标签: java sql insert

我试图插入具有以下列的数据库,但是出现以下错误:

您的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册以获取在'Id'值附近使用正确的语法('Gonzalo','Higuain','09 7 2018','Argentina',12.0,'Attacker','Right', '在第1行

  1. id,int自动递增

  2. 名字,文本

  3. 姓氏,文本

  4. 出生日期,文本

  5. 国籍,文字

  6. 高度,浮动

  7. 位置,文本

  8. StrongFoot,文字

  9. TeamId,Int

        DatabaseConnection DatabaseConnect= new DatabaseConnection();     
        DatabaseConnect.getConnection();                                  
        Statement mystatement = DatabaseConnect.myConn.createStatement();
        String club = ("Insert into players ( FirstName, LastName, DateOfBirth, Nationality, Height, Position, StrongFoot, Team Id) Values (?,?,?,?,?,?,?,?)");
        PreparedStatement input = DatabaseConnect.myConn.prepareStatement(club);
        input.setString(1, fName);
        input.setString(2, lName);
        input.setString(3, formattedDate);
        input.setString(4, nationality);
        input.setDouble(5, height);
        input.setString(6, position);
        input.setString(7, foot);
        input.setInt(8, teamId);
        input.executeUpdate();
    

1 个答案:

答案 0 :(得分:4)

String club = ("Insert into players ( FirstName, LastName, DateOfBirth, Nationality, Height, Position, StrongFoot, Team Id) Values (?,?,?,?,?,?,?,?)");

我认为上面的Team Id应该是TeamId。你那里有空间。这应该是这样:

String club = ("Insert into players ( FirstName, LastName, DateOfBirth, Nationality, Height, Position, StrongFoot, TeamId) Values (?,?,?,?,?,?,?,?)");