Utilisation de Spring Boot et postgres. J'ai des données hiérarchiques dans la base de données, avec le chemin stocké dans une colonne ltree. J'essaie d'attraper un objet particulier en fonction du chemin, mais j'ai du mal à interroger la base de données.JPA Postgres requête ltree path
classe du modèle:
@Entity
@Table(schema = "devschema", name = "family")
public class Family {
@Id
@Column(name = "member_id")
private Long memId;
@Column(name = "name")
private String memName;
@Column(name = "fam_path", columnDefinition="ltree")
private String familyPath;
... getters and setters
}
classe de dépôt:
public interface OrgRepository extends PagingAndSortingRepository <Family, Long>{
public Family findByMemId(Long id);
public Family findByMemName(String memName);
@Query("select f from Family f where familyPath = ?1")
public Family findByPath(String path);
}
Un appel à partir du contrôleur, en passant dans le chemin en tant que variable de chaîne appelée chemin:
desiredMember = familyRepository.findByPath (chemin);
cède l'erreur suivante:
2016-02-15 20:41:06.430 ERROR 88677 --- [nio-8080-exec-1] o.h.engine.jdbc.spi.SqlExceptionHelper : ERROR: operator does not exist: devschema.ltree = character varying
Hint: No operator matches the given name and argument type(s). You might need to add explicit type casts.
Position: 397
2016-02-15 20:41:06.449 ERROR 88677 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.dao.InvalidDataAccessResourceUsageException: could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not extract ResultSet] with root cause
org.postgresql.util.PSQLException: ERROR: operator does not exist: fhschema.ltree = character varying
Hint: No operator matches the given name and argument type(s). You might need to add explicit type casts.
Position: 397
J'ai essayé de jeter f au texte, mais en vain. Quelqu'un at-il une idée sur la façon de résoudre le problème?
voir http://stackoverflow.com/questions/21447077/java-type-in- jdbc-to-postgres-ltree –