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
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 trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

37.1. Tổng quan về hành vi kích hoạt sự cách đọc kèo bóng đá

Một kích hoạt sự cách đọc kèo bóng đá bắn bất cứ khi nào sự cách đọc kèo bóng đá được liên kết xảy ra trong cơ sở dữ liệu được xác định. Hiện tại, các sự cách đọc kèo bóng đá được hỗ trợ duy nhất làDDL_Command_Start, DDL_COMMAND_ENDSQL_Drop. Hỗ trợ cho các sự cách đọc kèo bóng đá bổ sung có thể được thêm vào trong các bản phát hành trong tương lai.

TheDDL_Command_StartSự cách đọc kèo bóng đá xảy ra ngay trước khi thực hiện ATạo, ATTERhoặcthảlệnh. Không kiểm tra xem đối tượng bị ảnh hưởng có tồn tại hay không tồn tại được thực hiện trước khi kích hoạt sự cách đọc kèo bóng đá. Tuy nhiên, như một ngoại lệ, sự cách đọc kèo bóng đá này không xảy ra đối với các lệnh DDL nhắm mục tiêu các đối tượng được chia sẻ - cơ sở dữ liệu, vai trò và không gian bảng - hoặc cho các lệnh nhắm mục tiêu các kích hoạt sự cách đọc kèo bóng đá. Cơ chế kích hoạt sự cách đọc kèo bóng đá không hỗ trợ các loại đối tượng này.DDL_Command_Startcũng xảy ra ngay trước khi thực hiệnChọn vàolệnh, vì điều này tương đương vớiTạo bảng dưới dạng.

TheDDL_COMMAND_ENDSự cách đọc kèo bóng đá xảy ra ngay sau khi thực hiện cùng một bộ lệnh này.

TheSQL_DropSự cách đọc kèo bóng đá xảy ra ngay trướcDDL_COMMAND_ENDTrình kích hoạt sự cách đọc kèo bóng đá cho bất kỳ hoạt động nào làm giảm các đối tượng cơ sở dữ liệu. Để liệt kê các đối tượng đã bị loại bỏ, hãy sử dụng chức năng hoàn trả lạipg_event_trigger_dropped_objects ()từSQL_DropMã kích hoạt sự cách đọc kèo bóng đá (xemPhần 9.28). Lưu ý rằng kích cách đọc kèo bóng đá được thực thi sau khi các đối tượng đã bị xóa khỏi các danh mục hệ thống, vì vậy không thể tìm kiếm chúng nữa.

Trình kích hoạt sự cách đọc kèo bóng đá (giống như các chức năng khác) không thể được thực thi trong một giao dịch bị hủy bỏ. Do đó, nếu lệnh DDL không có lỗi, bất kỳ liên quan nàoDDL_COMMAND_ENDTriggers sẽ không được thực thi. Ngược lại, nếu mộtDDL_Command_StartTrình kích hoạt thất bại với lỗi, không có sự cách đọc kèo bóng đá nào gây ra sự cách đọc kèo bóng đá sẽ bắn và sẽ không có nỗ lực nào được thực hiện để tự thực hiện lệnh. Tương tự, nếu mộtDDL_COMMAND_END11302_11468

Để biết danh sách đầy đủ các lệnh được hỗ trợ bởi cơ chế kích hoạt sự cách đọc kèo bóng đá, xemPhần 37.2.

Trình kích hoạt sự cách đọc kèo bóng đá được tạo bằng lệnhPostgreSQL: Tài liệu: 9.4: tỷ lệ kèo. Để tạo trình kích hoạt sự cách đọc kèo bóng đá, trước tiên bạn phải tạo chức năng với loại trả về đặc biệtevent_trigger. Hàm này không cần (và có thể không) trả về một giá trị; Loại trả về chỉ đóng vai trò là tín hiệu cho thấy hàm sẽ được gọi dưới dạng kích hoạt sự cách đọc kèo bóng đá.

Nếu có nhiều hơn một kích hoạt sự cách đọc kèo bóng đá được xác định cho một sự cách đọc kèo bóng đá cụ thể, chúng sẽ bắn theo thứ tự bảng chữ cái bằng tên kích hoạt.

Một định nghĩa kích cách đọc kèo bóng đá cũng có thể chỉ định AKhiĐiều cách đọc kèo bóng đá sao cho, ví dụ, ADDL_Command_StartTrigger chỉ có thể được bắn cho các lệnh cụ thể mà người dùng muốn chặn. Việc sử dụng phổ biến các kích cách đọc kèo bóng đá như vậy là hạn chế phạm vi cách đọc kèo bóng đá động DDL mà người dùng có thể thực hiện.