Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4
Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một tỷ lệ kèo bóng đá các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

39.6. Thủ tục tỷ lệ kèo bóng đá PL/TCL

Quy trình kích tỷ lệ kèo bóng đá có thể được viết bằng PL/TCL.PostgreSQLyêu cầu một quy trình được gọi là một kích tỷ lệ kèo bóng đá phải được khai báo là một hàm không có Đối số và loại trả về củaTrigger.

Thông tin từ Trình quản lý kích tỷ lệ kèo bóng đá được chuyển cho Cơ quan thủ tục trong các biến sau:

11010_11020

Tên của bộ kích tỷ lệ kèo bóng đá từTạo Triggercâu lệnh.

$ tg_relid

ID đối tượng của bảng gây ra kích tỷ lệ kèo bóng đá thủ tục được gọi.

$ tg_table_name

Tên của bảng gây ra quy trình kích tỷ lệ kèo bóng đá được gọi.

$ tg_table_schema

lược đồ của bảng gây ra kích tỷ lệ kèo bóng đá thủ tục được gọi.

$ tg_relatts

Danh sách TCL của tên cột bảng, có tiền tố với một yếu tố danh sách trống. Vì vậy, tìm kiếm một tên cột tỷ lệ kèo bóng đá danh sách vớiTCL'sLsearchLệnh trả về phần tử của phần tử Số bắt đầu bằng 1 cho cột đầu tiên, theo cùng một cách Các cột được đánh số theo sốPostgreSQL. (Các yếu tố danh sách trống cũng xuất hiện ở vị trí của các cột đã bị rơi, để việc đánh số thuộc tính là chính xác cho các cột quyền của họ.)

$ tg_when

chuỗitrướchoặcsauTùy thuộc vào loại kích tỷ lệ kèo bóng đá sự kiện.

$ tg_level

chuỗihànghoặccâu lệnhTùy thuộc vào loại kích tỷ lệ kèo bóng đá sự kiện.

$ tg_op

chuỗiChèn, Cập nhật, Xóahoặccắt ngắnTùy thuộc vào loại sự kiện kích tỷ lệ kèo bóng đá.

$ new

Một mảng kết hợp chứa các giá trị của cái mới Hàng bảng choChènhoặcCập nhật13347_13372Xóa. Mảng được lập chỉ mục bằng tên cột. Các cột là NULL sẽ không xuất hiện trong mảng. Đây là không đặt cho các kích tỷ lệ kèo bóng đá cấp câu lệnh.

$ cũ

Một mảng kết hợp chứa các giá trị của cái cũ Hàng bảng choCập nhậthoặcXóahành động hoặc trống choChèn. Mảng được lập chỉ mục bằng tên cột. Các cột là NULL sẽ không xuất hiện trong mảng. Đây là không đặt cho các kích tỷ lệ kèo bóng đá cấp câu lệnh.

$ args

Một danh sách TCL của các đối số cho quy trình như được đưa ra tỷ lệ kèo bóng đá TheTạo TriggerTuyên bố. Những đối số này cũng có thể truy cập được là$ 1...$ntỷ lệ kèo bóng đá cơ thể thủ tục.

Giá trị trả về từ quy trình kích tỷ lệ kèo bóng đá có thể là một trong những chuỗiOKhoặcBỏ quahoặc một danh sách được trả về bởimảng getLệnh TCL. Nếu giá trị trả về làOK, tỷ lệ kèo bóng đá động (Chèn/Cập nhật/Xóa) đã bắn kích tỷ lệ kèo bóng đá sẽ tiếp tục thông thường.Bỏ quaNói với trình quản lý kích tỷ lệ kèo bóng đá Để âm thầm đàn áp tỷ lệ kèo bóng đá động cho hàng này. Nếu một danh sách là Trả về, nó bảo PL/TCL trả lại một hàng sửa đổi cho trình kích tỷ lệ kèo bóng đá Trình quản lý sẽ được chèn thay vì cái được đưa ra trong$ new. (Điều này tỷ lệ kèo bóng đá động choChènCập nhậtchỉ.) Không cần phải nói rằng tất cả điều này chỉ có ý nghĩa khi kích tỷ lệ kèo bóng đá làtrướccho Mỗi hàng; nếu không thì giá trị trả về bị bỏ qua.

15451_15713

15746_16269

Lưu ý rằng chính quy trình kích tỷ lệ kèo bóng đá không biết Tên cột; Đó là cung cấp từ các đối số kích tỷ lệ kèo bóng đá. Cái này Cho phép quy trình kích tỷ lệ kèo bóng đá được sử dụng lại với các bảng khác nhau.