Microsoft SQL Server에서 출력 매개 변수와 선택 결과를 모두 사용하여 데이터를 클라이언트에 반환 할 수 있습니다. 이것은 페이징과 같은 유스 케이스에서 유용합니다. 여기에서는 총 페이지 수와 같은 관련 메타 데이터와 함께 메인 세트를 반환해야합니다. Postgres에서 지금까지 본 모든 예제는 출력 매개 변수를 통해 또는 테이블 결과를 통해 데이터를 반환합니다. 나는 다음과 같은 오류와 함께 실패로 함께 모두 프로 시저를 만들 수 없습니다입니다 : ERROR : OUT 및 INOUT 인수가 표 기능을 사용할 수 없습니다 여기Postgresql : Microsoft SQL Server에서와 같이 저장 프로 시저에서 테이블 데이터와 출력 매개 변수를 모두 반환하는 방법이 있습니까
내가 뭘하려 :
CREATE OR REPLACE FUNCTION fn_Test(out p_count int)
RETURNS TABLE (CustomerId int, CustomerName varchar(50))
LANGUAGE 'plpgsql'
AS $BODY$
BEGIN
INSERT INTO Customers(CustomerName, Address, Area, Phonenumber, Email, communicationpreference)
VALUES ('Julie Yellow', 'JY Ad', 'JY Ar', 'JV0987654', '[email protected]', 1);
SELECT COUNT(*) FROM CUSTOMERS INTO p_count;
SELECT CustomerId, CustomerName FROM Customers;
EXCEPTION WHEN OTHERS THEN
RAISE exception '% %', SQLERRM, SQLSTATE;
END;
$BODY$
함께 갈 수 없습니까? PostgreSQL에 대체 접근법이 있습니까?
대답은 '노