I think I got it wrong at the 'resultset'. My code for inserting data is :
ResultSet columns = statement.executeUpdate("INSERT INTO Feedback (Username, Feedbacks) VALUES( '" + user + "','"+ msg +"')");
The compilation error is:
Type mismatch: cannot convert from int to Str开发者_如何转开发ing
Can you help me?
Statement#executeUpdate()
doesn't return a ResultSet
, but an int
representing the affected rows. Fix it as follows.
int affectedRows = statement.executeUpdate(sql);
Or if you aren't interested in the amount of affected rows, just ignore it.
statement.executeUpdate(sql);
By the way, the compilation error at its own is weird. Aren't you looking at the wrong line? The error tells that you're trying to assign an int
result to a String
, but your code shows that you're trying to assign int
result to a ResultSet
.
That said and unrelated to your current problem, if user
and msg
are parts of user-controlled input, then this piece of code is prone to SQL injection attacks. I strongly recommend to replace Statement
by PreparedStatement
then. See also this tutorial how to use prepared statement.
精彩评论