1
Helloの専門家私はpostgresqlで関数を作成しました。 pgadmin 3とpostgreslq 9.5ではうまく動作しますが、pgadmin 4とpostgreql 10で同じスクリプトを実行すると、「エラー:ROWSは正のSQL状態:22023でなければなりません」というマッサージが生成されます。間違ったソースコードを生成pgAdminで4のバグだ `ROWSはpostgresで肯定的でなければならない
CREATE OR REPLACE FUNCTION office.is_logged_in(
user_id_ integer)
RETURNS boolean
LANGUAGE 'plpgsql'
COST 100
VOLATILE
ROWS 0
AS $BODY$
BEGIN
IF EXISTS(SELECT * FROM office.users
WHERE is_logged_in=true
AND user_id = $1) THEN
RETURN true;
ELSE
RETURN false;
END IF;
END
$BODY$;
ALTER FUNCTION office.is_logged_in(integer)
OWNER TO postgres;
`
はい、これはpgAdmin4のバグです。修正されました。次回の一般公開で修正される予定です。 Ref:https://redmine.postgresql.org/issues/2651 – n33rma