I have my SQL function (database PostgreSQL):
CREATE OR REPLACE FUNCTION adduser(idTopic integer, name character varying, email character varying)
RETURNS boolean AS
$BODY$
DECLARE checkName BOOLEAN;
BEGIN
INSERT INTO Users (idTopic, name, email)
VALUES (idTopic, name, email);
select (users.name=$2) into checkName from users where users.email = $3;
return checkName;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
And I can call this function from java:
@Override
public void add(User user) {
String queryAdd = "select adduser(" + user.getTopic().getId() + ",'" + user.getName() + "','" + user.getEmail() + "')";
Query query = getCurrentSession().createSQLQuery(queryAdd);
query.list();
}
But I need to have query without word 'select', I need "adduser(idTopic, name, email)", How can I to do it?