PostgreSQL | ||
---|---|---|
prev | Tiếp theo |
Tạo 토토 커뮤니티 tắctênnhư trênSự kiệnđếnĐối tượng[WHEREđiều kiện] Làm [thay vào đó] [Hành động| KHÔNG CÓ GÌ ]
Tên của một 토토 커뮤니티 tắc để tạo.
Sự kiện là một trong nhữngChọn, Cập nhật, XóahoặcChèn.
Đối tượng làBảnghoặcBảng.cột.
Bất kỳ SQL WHERE mệnh đề.mớihoặchiện tạicó thể xuất hiện thay vì biến thể bất cứ khi nào một biến thể hiện là cho phép trong sql.
bất kỳ câu lệnh SQL nào.mớihoặchiện tạicó thể xuất hiện thay vì biến thể bất cứ khi nào một biến thể hiện là cho phép trong sql.
Tin nhắn được trả về nếu quy tắc là thành công tạo.
ngữ nghĩa của một quy tắc là tại thời điểm một cá nhân ví dụ được truy cập, cập nhật, chèn hoặc xóa, có một phiên bản hiện tại (để truy xuất, cập nhật và xóa) và một phiên bản mới ví dụ (để cập nhật và nối thêm). Nếusự kiệnđược chỉ định trong mệnh đề BẬT vàđiều kiệnđược chỉ định trong nơi mệnh đề đúng với thể hiện hiện tại,Hành độngMột phần của quy tắc được thực thi. Đầu tiên, Tuy nhiên, các giá trị từ các trường trong trường hợp hiện tại và/hoặc phiên bản mới được thay thế chohiện tại.tên thuộc tínhvàmới.tên thuộc tính.
TheHành độngmột phần của quy tắc thực thi với cùng một lệnh và định danh giao dịch như lệnh người dùng gây ra kích hoạt.
Một cảnh báo về các quy tắc SQL là theo thứ tự. Nếu cùng một lớp Tên hoặc biến thể hiện xuất hiện trongsự kiện, Theđiều kiệnvàHành độngcác phần của một 토토 커뮤니티 tắc, tất cả chúng đều là được coi là các biến tuple khác nhau. Chính xác hơn,newvàhiện tạilà các biến Tuple duy nhất là chia sẻ giữa các điều khoản này. Ví dụ: hai phần sau Các 토토 커뮤니티 tắc có cùng ngữ nghĩa:
Cập nhật lên emp.salary trong đó emp.name = "Joe" Cập nhật EMP (...) trong đó ... khi cập nhật lên emp-1.Salary trong đó emp-2.name = "Joe" Cập nhật emp-3 (...) trong đó ...Mỗi 토토 커뮤니티 tắc có thể có thẻ tùy chọn thay thế. Không có điều này nhãn,Hành độngsẽ được thực hiện trong bổ sung vào lệnh người dùng khiSự kiệntrongđiều kiệnMột phần của 토토 커뮤니티 tắc xảy ra. Xen kẽ,hành độngPhần sẽ được thực hiện thay vì Lệnh người dùng. Trong trường hợp này sau này,Hành độngcó thể là từ khóa không có gì.
Khi chọn giữa các hệ thống Quy tắc Viết lại và Quy tắc Viết Đối với một ứng dụng quy tắc cụ thể, hãy nhớ rằng trong bản viết lại hệ thống,hiện tạiđề cập đến một mối quan hệ và một số vòng loại trong khi trong hệ thống ví dụ mà nó đề cập đến một thể hiện (tuple).
Điều rất quan trọng cần lưu ý là hệ thống 토토 커뮤니티 tắc viết lại sẽ không phát hiện cũng không xử lý các 토토 커뮤니티 tắc tròn. Ví dụ, mặc dù hai định nghĩa 토토 커뮤니티 tắc sau đây được chấp nhận quaPostgres, Truy xuất lệnh sẽ gây raPostgresđến tai nạn:
Ví dụ 19-1. Ví dụ về viết lại tròn sự kết hợp quy tắc.
Tạo 토토 커뮤니티 tắc BAD_RULE_COMBINION_1 là Trên chọn vào EMP Thay vào đó chọn để Toyemp Tạo 토토 커뮤니티 tắc bad_rule_combination_2 là Trên chọn Toyemp Thay vào đó chọn vào EMP
nỗ lực lấy lại từ EMP sẽ gây raPostgresđể gặp sự cố.
Chọn * từ EMP
Bạn phải có quyền truy cập định nghĩa quy tắc vào một lớp để Xác định một quy tắc về nó. Sử dụngGrantvàthu hồiĐể thay đổi 토토 커뮤니티ền.
Làm cho Sam có được điều chỉnh lương giống như Joe:
Tạo 토토 커뮤니티 tắc example_1 là trên Cập nhật EMP.Salary WHERE hiện tại.name = "Joe" DO CẬP NHẬT EMP (Mức lương = new.salary) WHERE EMP.NAME = "SAM"Tại thời điểm đó, Joe nhận được điều chỉnh lương, sự kiện sẽ trở thành sự thật và ví dụ hiện tại của Joe và đề xuất trường hợp mới có sẵn cho các thói quen thực thi. Do đó, mức lương mới của anh ấy là được thay thế vào phần hành động của quy tắc sau đó thực hiện. Điều này tuyên bố tiền lương của Joe lên Sam.
Làm cho Bill nhận tiền lương của Joe khi được truy cập:
Tạo 토토 커뮤니티 tắc example_2 là Trên chọn vào emp.salary trong đó hiện tại.name = "Bill" làm thay thế Chọn (emp.salary) từ EMP WHERE EMP.NAME = "Joe"
Từ chối Joe truy cập vào mức lương của nhân viên trong giày phòng (current_userTrả về Tên của người dùng hiện tại):
Tạo 토토 커뮤니티 tắc example_3 là Trên chọn vào emp.salary trong đó hiện tại.dept = "giày" và current_user = "joe" thay vào đó không có gì
Tạo một cái nhìn của các nhân viên làm việc trong đồ chơi phòng.
Tạo Toyemp (name = char16, tiền lương = int4) Tạo 토토 커뮤니티 tắc example_4 là Trên chọn Toyemp làm thay thế Chọn (emp.name, emp.salary) từ EMP WHERE EMP.DEPT = "Đồ chơi"
Tất cả nhân viên mới phải kiếm được 5.000 hoặc ít hơn
Tạo 토토 커뮤니티 tắc example_5 là Khi chèn vào EMP WHERE New.Salary 5000 DO CẬP NHẬT TANSET Mức lương = 5000
Đối tượng trong quy tắc SQL không thể là tham chiếu mảng và không thể có tham số.
Ngoài trường "OID", các thuộc tính hệ thống không thể tham chiếu bất cứ nơi nào trong một quy tắc. Trong số những thứ khác, điều này có nghĩa là đó là các chức năng của các trường hợp (ví dụ: "foo (emp)"ở đâu"EMP"IS một lớp) không thể được gọi ở bất cứ đâu trong một quy tắc.
Hệ thống quy tắc lưu trữ các kế hoạch văn bản và truy vấn quy tắc dưới dạng văn bản thuộc tính. Điều này ngụ ý rằng việc tạo ra các quy tắc có thể thất bại nếu quy tắc cộng với các biểu diễn nội bộ khác nhau của nó vượt quá một số giá trị Đó là trên thứ tự của một trang (8kb).
Tạo câu lệnh quy tắc làPostgresPhần mở rộng ngôn ngữ.
Không có câu lệnh quy tắc tạo trongSQL92.