sql >> Databáze >  >> RDS >> PostgreSQL

PostgreSQL - nekonečná rekurze zjištěná v politice pro vztah

No, nevím, jak je to slušné, ale na mě to funguje. Našel jsem řešení ve vytvoření pohledu, kde je id oddělení current_user a poté zkontroloval, zda se shoduje:

CREATE VIEW curr_department AS
    (SELECT department_id as id FROM employee WHERE id =
        (SELECT employee_id FROM account WHERE login = current_user)
    );

CREATE POLICY locale_policy ON employee
    TO justuser, operator
    USING (department_id =
        (SELECT id FROM curr_department)
    );


  1. Jak specifikuji klauzuli IN v laravel batohu?

  2. Hromadné vkládání do Oracle pomocí .NET

  3. Změna ORDER BY z id na jiný indexovaný sloupec (s nízkým LIMIT) má obrovské náklady

  4. sql dotaz, který vrátí rozdíly mezi dvěma tabulkami