是否可以使用LIKE准备好的语句占位符?

rth*_*sen 1 java mysql prepared-statement

这失败了:
db.prepareStatement("SELECT * FROM " + table + " WHERE " + column + " LIKE '?%'");

因为?未将其识别为值的占位符.我应该如何解决这个问题?

fem*_*gon 6

将通配符放在变量中,而不是在语句中,如:

stmt = db.prepareStatement("SELECT * FROM " + table + " WHERE " + column + " LIKE ?");
stmt.setString(1, "myterm%");
Run Code Online (Sandbox Code Playgroud)