PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

PostgreSQL - phát hiện đệ quy vô hạn trong chính sách cho mối quan hệ

Tôi không biết nó tử tế như thế nào, nhưng nó phù hợp với tôi. Tôi đã tìm thấy giải pháp trong việc tạo chế độ xem ở đâu là id của bộ phận current_user và sau đó kiểm tra xem nó có khớp không:

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Docker - Ứng dụng Rails không thể kết nối với vùng chứa Postgres được liên kết (dường như không chạy)

  2. Postgresql tạo tiện ích mở rộng không thành công

  3. Lỗi Sequelize:Không tồn tại quan hệ

  4. Cách đặt thời gian chờ câu lệnh để thực hiện truy vấn

  5. PHP / PostgreSQL:kiểm tra xem một câu lệnh chuẩn bị đã tồn tại chưa