Ho una colonna che potenzialmente ha alcuni dati errati e non riesco a ripulirla, quindi ho bisogno di verificare la stringa vuota o vuota. Sto facendo una query Criteri Hibernate così ho ottenuto il seguente che restituisce in modo non corretto in questo momento:In che modo l'ibernazione utilizza una stringa vuota per una restrizione di uguaglianza?
Session session = getSessionFactory().openSession();
Transaction tx = session.beginTransaction();
Criteria myCriteria = session.createCriteria(Object);
...
myCriteria.add(Restrictions.or(Restrictions.isNull("stringColumn"),
Restrictions.eq("stringColumn", "")));
List<Objects> list = myCriteria.list();
non posso farlo per restituire correttamente i risultati che ci si aspetta. Così come un esperimento ho cambiato la seconda restrizione di leggere:
Restrictions.eq("stringColumn", "''")
Ed è iniziato restituzione dei risultati attesi, quindi è ibernazione in modo non corretto tradurre la mia stringa vuota (per esempio "") in una stringa vuota SQL (ad esempio '') o sto sbagliando?
quale database si sta utilizzando - stringhe vuote hanno differenti comportamenti in diverse DBS – Mark