如何在 jpa 中调用 table 函数

How to call a table function in jpa

我一直在尝试调用我使用 jpa 创建的函数,但我一直收到此错误

(org.eclipse.persistence.exceptions.DatabaseException 内部异常:com.microsoft.sqlserver.jdbc.SQLServerException:'udf_searchEmployeeLeaves' 不是可识别的内置函数名称。 错误代码:195)

public List<EmployeeLeaves> searchEmployeeLeaves(String str) throws EmployeeLeavesException {

    try {
        Query query = em.createNativeQuery("SELECT udf_searchEmployeeLeaves(?1) FROM LAB ");

        query.setParameter(1, str);

        return query.getResultList();

    } catch (Exception e) {

        throw new EmployeeLeavesException("[searchEmployeeLeaves-ERROR]: " + e.getMessage());

    }

}

我认为调用不正确。

您必须像这样调用 table 函数:

Query query = em.createNativeQuery("SELECT * FROM udf_searchEmployeeLeaves(?1)");