我的表创建如下:
public final String CREATE_QUESTIONS_TABLE = "CREATE TABLE Questions(QuestionID INTEGER PRIMARY KEY GENERATED ALWAYS AS IDENTITY,"
+ "SubmittedTime TIMESTAMP NOT NULL,"
+ "Title VARCHAR(50) NOT NULL,"
+ "Text VARCHAR(300) NOT NULL,"
+ "Username VARCHAR(10) NOT NULL,"
+ "Rating INTEGER DEFAULT 0 NOT NULL)";
Run Code Online (Sandbox Code Playgroud)
我的INSERT查询如下所示:
public final String INSERT_QUESTION_STMT = "INSERT INTO Questions(SubmittedTime, Title, Text, Username) VALUES(?,?,?,?)";
Run Code Online (Sandbox Code Playgroud)
我插入的servlet代码的一部分如下所示:
// insert question into database
PreparedStatement pstmt = conn.prepareStatement(AppConstants.INSERT_QUESTION_STMT);
pstmt.setTimestamp(1, new Timestamp(System.currentTimeMillis()));
pstmt.setString(2, newQuestion.getTitle());
pstmt.setString(3, newQuestion.getText());
pstmt.setString(4, (String)session.getAttribute("username"));
pstmt.executeUpdate();
Run Code Online (Sandbox Code Playgroud)
到目前为止一切正常,它将问题插入数据库.
我想获得问题的自动生成ID,但我尝试使用:
ResultSet rs …Run Code Online (Sandbox Code Playgroud)