JPA @Query select для оракула ORA-01722: недопустимый номер в строке - PullRequest
1 голос
/ 17 октября 2019

У меня есть следующий запрос, который отлично работает с ms-SQL, но с ошибкой oracle

есть пример запроса, оригинал очень сложный, но этот воспроизводит ошибку

@Query("SELECT new Map((s.name + ' - ' + s.name) as name , s.idStandard as idStandard) FROM Standard s ")

jpa модель

public class Standard
{


    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(unique = true, nullable = false)
    private int idStandard;

    @Column(name = "Name")
    @NonNull
    private String name;

    @Column(name = "Description")
    private String description;

    @Column(name = "UpdateUser")
    private String updateUser;


    @Column(name = "UpdateDT")
        private Date updateDt;
}

почему оракул считает, что это (s.name + '-' + s.name) - это число?

1 Ответ

1 голос
/ 17 октября 2019

Я думаю, что мир заслуживает того, чтобы знать :) используя оператор конкатенации ||решает проблему !! Оператор concatenate позволяет объединять 2 или более строк вместе.

для получения дополнительной информации см. документ https://www.techonthenet.com/oracle/functions/concat2.php

обновление запроса выполняется в ms SQL и oracle

@Query("SELECT new Map((s.name || ' - ' || s.name) as name , s.idStandard as idStandard) FROM Standard s ")
...