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 soi kèo bóng đá truoctran 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ế.

43.4. Dữ liệu toàn cầu trong soi kèo bóng đá truoctran

Đôi khi rất hữu ích khi có một số dữ liệu toàn cầu được tổ chức giữa hai cuộc gọi đến một hàm hoặc được chia sẻ giữa các chức năng khác nhau. Điều này dễ dàng được thực hiện trong soi kèo bóng đá truoctran, nhưng có một số hạn chế phải được hiểu.

Vì lý do bảo mật, soi kèo bóng đá truoctran thực thi các chức năng được gọi bởi bất kỳ vai trò SQL nào trong một trình thông dịch TCL riêng cho vai trò đó. Điều này ngăn chặn sự can thiệp vô tình hoặc độc hại của một người dùng với hành vi của các chức năng soi kèo bóng đá truoctran của người dùng khác.soi kèo bóng đá truoctranHồiBiến TCL. Do đó, hai hàm soi kèo bóng đá truoctran sẽ chia sẻ cùng một biến toàn cầu khi và chỉ khi chúng được thực thi bởi cùng một vai trò SQL.bảo mật xác địnhCác chức năng, sử dụngĐặt vai trò, v.v.) Bạn có thể cần thực hiện các bước rõ ràng để đảm bảo rằng các hàm soi kèo bóng đá truoctran có thể chia sẻ dữ liệu. Để làm điều đó, hãy đảm bảo rằng các chức năng nên giao tiếp được sở hữu bởi cùng một người dùng và đánh dấu chúngBảo mật xác định. Tất nhiên bạn phải quan tâm rằng các chức năng như vậy không thể được sử dụng để làm bất cứ điều gì ngoài ý muốn.

Tất cả các chức năng PL/TCLU được sử dụng trong một thực thi phiên trong cùng một trình thông dịch TCL, tất nhiên là khác biệt với (các) trình thông dịch được sử dụng cho các chức năng soi kèo bóng đá truoctran. Vì vậy, dữ liệu toàn cầu được tự động chia sẻ giữa các hàm PL/TCLU.

Để giúp bảo vệ các chức năng soi kèo bóng đá truoctran khỏi can thiệp vào nhau, một mảng toàn cầu được cung cấp cho từng chức năng thông quaUPVARlệnh. Tên soi kèo bóng đá truoctran của biến này là tên nội bộ của hàm và tên cục bộ làGD. Nó được khuyến nghị rằngGDđược sử dụng cho dữ soi kèo bóng đá truoctran riêng tư liên tục của một hàm. Chỉ sử dụng các biến toàn cầu TCL thông thường cho các giá trị mà bạn đặc biệt có ý định được chia sẻ giữa nhiều chức năng.GDMảng chỉ có soi kèo bóng đá truoctran trong một trình thông dịch cụ thể, vì vậy chúng không bỏ qua các hạn chế bảo mật được đề cập ở trên.)

Một ví dụ về việc sử dụngGDxuất hiện trongSPI_EXECPVí dụ bên dưới.