ich als so eine vorbereitete Erklärung haben:Java PreparedStatement SQL-Syntax für LIKE
private static final String SQL_LIST_GROUP = "SELECT *
FROM table
WHERE group LIKE ?;"
Meine Funktion, meine Funktion ist wie folgt (verkürzt und SQL-Objekte ordnungsgemäß deklariert):
public List<MyType> getGroupList(Long grp) {
Connection link = null;
PreparedStatement query = null;
ResultSet rstList = null;
List<MyType> list = new ArrayList<MyType>();
try {
link = MySQL.getConnection();
link.setAutoCommit(false);
query = link.prepareStatement(SQL_LIST_GROUP);
query.setString(1, "%"+grp.toString()+",%");
rstList = query.executeQuery();
link.commit();
while (rstList.next()) {
list.add(MapFields(rstList));
}
return list;
} catch (SQLException e) {
throw new DAOException(e);
} finally {
close(link, query, rstList);
}
}
Die conections sind richtig gemacht, aber ich bekomme einen Syntaxfehler, ist die vorbereitete Anweisung mit dem Wert geparst wie folgt:
Irgendwelche Vorschläge?
thnks für die Inline-Bearbeitung, ich habe die vier Räume versucht, aber es hat nicht funktioniert .. – Triztian
Sind Sie sicher, sollte es ein Komma in + „“% sein –
ja, es ist eine ganze Zahl Liste getrennt: 1, 3,56,7,8,6,5,6 – Triztian