tỷ lệ kèo bóng đá | ||||
---|---|---|---|---|
Prev | Backward nhanh | Chuyển tiếp nhanh | Tiếp theo |
PL/PGSQLlà một tảitỷ lệ kèo bóng đáHệ thống cơ sở dữ liệu. Các mục tiêu thiết kếPL/PGSQLđã tạo ra một
có thể được sử dụng để tạo các chức năng và kích hoạt
Thêm cấu trúc điều khiển vàoSQLNgôn ngữ,
Có thể thực hiện các tính toán phức tạp,
kế thừa tất cả các loại, chức năng do người dùng xác định
có thể được xác định để được máy chủ tin cậy,
rất dễ sử dụng.
Ngoại trừ các chức năng chuyển đổi và đầu ra đầu vào/đầu raPL/PGSQL. Ví dụ, có thể
ThePL/PGSQLngười xử lý gọiPL/PGSQLTuyên bốSQLBiểu thức vàSQLCác lệnh được sử dụng trong hàm không
như mỗi biểu thức vàSQLLệnh được sử dụng đầu tiên trong chức năng,PL/PGSQLThông dịch viênSPINgười quản lýspi_prepare
vàspi_saveplan
chức năng).Các lượt truy cập tiếp theo đến biểu thức đó hoặcPL/PGSQLHàm. Một bất lợi là
một lầnPL/PGSQLđã làm một
Tạo hàm Fopulation () trả về số nguyên dưới dạng $$
Nếu bạn thực thi chức năng trên, nó sẽ tham khảo OIDmy_function ()
Trongbiểu diễnTuyên bố. Sau này, nếu bạn thả vàmy_function ()
, sau đóFopulation ()
sẽ không thểmy_function ()
nữa. Bạnđông dân ()
hoặc ít nhất là bắt đầu một cơ sở dữ liệu mớiTạo hoặcKhi cập nhật định nghĩa củamy_function
(Khi hàm là"Thay thế", OID của nó không phải là
vìPL/PGSQLLưuPL/PGSQLHàm phảiPL/PGSQL thực thiTuyên bố - với giá xây dựng kế hoạch thực thi mới
Lưu ý:ThePL/PGSQL thực thiCâu lệnh không liên quan đếnthực thiSQLtỷ lệ kèo bóng đáMáy chủ. Máy chủthực thiTuyên bố không thể được sử dụngPL/PGSQLchức năng
SQLlà ngôn ngữtỷ lệ kèo bóng đávà hầu hết khácSQLCâu lệnh phải được thực thi
Điều đó có nghĩa là ứng dụng khách của bạn phải gửi mỗi
vớiPL/PGSQLBạn có thểbên trongCơ sở dữ liệu
Loại bỏ các chuyến đi vòng bổ sung giữa máy khách
Kết quả trung gian mà khách hàng không cần làm
Không cần các vòng truy vấn bổ sung
Điều này có thể cho phép tăng hiệu suất đáng kể khi
Ngoài ra, vớiPL/PGSQLBạn
Các chức năng được viết bằngPL/PGSQLcó thể chấp nhận làm đối số bất kỳPL/PGSQLchức năng là trả vềRecord, có nghĩa là kết quả làPhần.
PL/PGSQLCác chức năng có thểAnyEuityvàAnyArray. Các loại dữ liệu thực tế được xử lý bởi mộtPhần. Một ví dụ được hiển thị trongPhần.
PL/PGSQLHàm có thể"SET"hoặc bảng, của bất kỳ loại dữ liệu nào họ có thểtrở lại tiếp theocho
Cuối cùng, APL/PGSQLHàm có thể được tuyên bố trả lạivoidNếu nó không có giá trị trả về hữu ích.
Lưu ý: PL/PGSQLHiện không có hỗ trợ đầy đủ cho các loại miền: NóPL/PGSQLchức năng như
PL/PGSQLchức năng có thể
Ví dụ cụ thể xuất hiện trongPhầnvàPhần 36.7.1.