मैं Ebean के साथ एक Play2 एप्लिकेशन बनाने रहा हूँ के साथ इस सूची में चयन करते। मैं आईडी की एक सूची से स्थानों प्राप्त करने के लिए एक विधि के साथ एक सेवा वर्ग बनाया है:मैं कैसे Ebean createSqlQuery
public static List<Venue> getVenuesForIds(List<Long> list){
ArrayList<Venue> venues = new ArrayList<Venue>();
String sql = "select c.id, c.name from Company c where in (:ids)";
List<SqlRow> sqlRows =
Ebean.createSqlQuery(sql).setParameter("ids", list).findList();
for(SqlRow row : sqlRows) {
venues.add(new Venue(row.getLong("id"), row.getString("name")));
}
return venues;
}
लेकिन मैं हो रही है:
[PersistenceException: Query threw SQLException:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'in (201639091,201637666)' at line 1 Query was: select c.id, c.name from Company c where in (?,?) ]
मैं http://www.avaje.org/ebean/introquery.html के माध्यम से पढ़ा है, लेकिन शायद सही सिंटैक्स याद किया। मैं कच्चे एसक्यूएल में ऐसा करना चाहता हूं। मुझे क्या याद आया?
बस उत्सुक: 'Venue' एक मॉडल है जो तालिका का नाम है' कंपनी 'या आप चयन कर रहे हैं यह अन्य मॉडल की वस्तुओं के साथ? – biesior
हैलो! मैं एक नए ऐप से डेटाबेस तक पहुंच रहा हूं जहां स्थल इकाई के लिए अधिक उपयुक्त नाम है। – jakob