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

37.2. ThePostgreSQLtỷ lệ kèo bóng đá 88 hệ thống

PostgreSQLCác tỷ lệ kèo bóng đá 88 dữ liệu được chia thành các tỷ lệ kèo bóng đá 88 cơ sở, tỷ lệ kèo bóng đá 88 tổng hợp, miền và tỷ lệ kèo bóng đá 88 giả.

37.2.1. Các tỷ lệ kèo bóng đá 88 cơ sở

Các tỷ lệ kèo bóng đá 88 cơ sở là những tỷ lệ kèo bóng đá 88, nhưINT4, được thực hiện dưới mức củaSQLNgôn ngữ (thường bằng ngôn ngữ cấp thấp như C). Chúng thường tương ứng với những gì thường được gọi là các tỷ lệ kèo bóng đá 88 dữ liệu trừu tượng.PostgreSQL12389_12746

37.2.2. Các tỷ lệ kèo bóng đá 88 tổng hợp

Các tỷ lệ kèo bóng đá 88 tổng hợp hoặc tỷ lệ kèo bóng đá 88 hàng, được tạo bất cứ khi nào người dùng tạo bảng. Nó cũng có thể sử dụngTạo tỷ lệ kèo bóng đá 88Để xác định Ađộc lậptỷ lệ kèo bóng đá 88 tổng hợp không có bảng liên kết. Một tỷ lệ kèo bóng đá 88 tổng hợp chỉ đơn giản là một danh sách các tỷ lệ kèo bóng đá 88 có tên trường liên quan. Giá trị của tỷ lệ kèo bóng đá 88 tổng hợp là một hàng hoặc bản ghi của các giá trị trường. Người dùng có thể truy cập các trường thành phần từSQLTruy vấn. Tham khảoPhần 8.16Để biết thêm thông tin về các tỷ lệ kèo bóng đá 88 tổng hợp.

37.2.3. Miền

Một miền dựa trên một tỷ lệ kèo bóng đá 88 cơ sở cụ thể và cho nhiều mục đích có thể thay thế với tỷ lệ kèo bóng đá 88 cơ sở của nó. Tuy nhiên, một miền có thể có các ràng buộc hạn chế các giá trị hợp lệ của nó đối với một tập hợp con của tỷ lệ kèo bóng đá 88 cơ sở cơ bản sẽ cho phép.

miền có thể được tạo bằng cách sử dụngSQLlệnhTạo tên miền. Sáng tạo và sử dụng của họ không được thảo luận trong chương này.

37.2.4. Pseudo-Types

Có một vàiPseudo-TypesHồicho các mục đích đặc biệt. Các tỷ lệ kèo bóng đá 88 giả không thể xuất hiện dưới dạng các cột của các bảng hoặc thuộc tính của các tỷ lệ kèo bóng đá 88 tổng hợp, nhưng chúng có thể được sử dụng để khai báo các tỷ lệ kèo bóng đá 88 đối số và kết quả của các hàm. Điều này cung cấp một cơ chế trong hệ thống tỷ lệ kèo bóng đá 88 để xác định các lớp chức năng đặc biệt.Bảng 8.25Liệt kê các tỷ lệ kèo bóng đá 88 giả hiện có.

37.2.5. Các tỷ lệ kèo bóng đá 88 đa hình

Năm tỷ lệ kèo bóng đá 88 giả quan tâm đặc biệt làAnyEuity, AnyArray, Anynonarray, AnyenumAnyrange, được gọi chung làCác tỷ lệ kèo bóng đá 88 đa hình. Bất kỳ chức năng nào được tuyên bố bằng cách sử dụng các tỷ lệ kèo bóng đá 88 này được cho làHàm đa hình. Hàm đa hình có thể hoạt động trên nhiều tỷ lệ kèo bóng đá 88 dữ liệu khác nhau, với (các) tỷ lệ kèo bóng đá 88 dữ liệu cụ thể được xác định bởi các tỷ lệ kèo bóng đá 88 dữ liệu thực sự được truyền cho nó trong một cuộc gọi cụ thể.

16012_16227AnyEuityđược phép có bất kỳ tỷ lệ kèo bóng đá 88 dữ liệu thực tế cụ thể nào, nhưng trong bất kỳ cuộc gọi nào, tất cả đều phải làcùngtỷ lệ kèo bóng đá 88 thực tế. Mỗi vị trí được khai báo làAnyArraycó thể có bất kỳ tỷ lệ kèo bóng đá 88 dữ liệu mảng nào, nhưng tương tự tất cả chúng phải cùng tỷ lệ kèo bóng đá 88. Và tương tự, các vị trí được khai báo làAnyrangeTất cả phải là cùng tỷ lệ kèo bóng đá 88 phạm vi. Hơn nữa, nếu có các vị trí được tuyên bốAnyArrayvà những người khác được tuyên bốAnyEuity, tỷ lệ kèo bóng đá 88 mảng thực tế trongAnyArrayVị trí phải là một mảng có các phần tử là cùng tỷ lệ kèo bóng đá 88 xuất hiện trongAnyEuityVị trí. Tương tự, nếu có các vị trí được khai báoAnyrangevà những người khác được tuyên bốAnyEuityhoặcAnyArray, tỷ lệ kèo bóng đá 88 phạm vi thực tế trongAnyrangeVị trí phải là một phạm vi có phân nhóm là cùng tỷ lệ kèo bóng đá 88 xuất hiện trongAnyEuityVị trí và giống như tỷ lệ kèo bóng đá 88 phần tử củaAnyArrayVị trí.Anynonarrayđược đối xử giống hệt nhưAnyEuity17531_17618Anyenumđược đối xử giống hệt nhưAnyEuity, nhưng thêm ràng buộc bổ sung rằng tỷ lệ kèo bóng đá 88 thực tế phải là tỷ lệ kèo bóng đá 88 enum.

Do đó, khi có nhiều hơn một vị trí đối số được khai báo với tỷ lệ kèo bóng đá 88 đa hình, hiệu ứng ròng là chỉ được phép kết hợp một số tỷ lệ kèo bóng đá 88 đối số thực tế. Ví dụ: một hàm được khai báo làbằng (AnyEuity, AnyEuity)sẽ lấy bất kỳ hai giá trị đầu vào nào, miễn là chúng thuộc cùng một tỷ lệ kèo bóng đá 88 dữ liệu.

Khi giá trị trả về của hàm được khai báo là một tỷ lệ kèo bóng đá 88 đa hình, phải có ít nhất một vị trí đối số cũng đa hình và tỷ lệ kèo bóng đá 88 dữ liệu thực tế được cung cấp là đối số xác định tỷ lệ kèo bóng đá 88 kết quả thực tế cho cuộc gọi đó. Ví dụ: nếu chưa có cơ chế đăng ký mảng, người ta có thể xác định một hàm thực hiện đăng ký làĐăng ký (AnyArray, Integer) trả về AnyEuity18597_18817f (AnyArray) trả về AnyenumSẽ chỉ chấp nhận các mảng của các tỷ lệ kèo bóng đá 88 enum.

Trong hầu hết các trường hợp, trình phân tích cú pháp có thể suy ra tỷ lệ kèo bóng đá 88 dữ liệu thực tế cho tỷ lệ kèo bóng đá 88 kết quả đa hình từ các đối số thuộc tỷ lệ kèo bóng đá 88 đa hình khác nhau; Ví dụAnyArraycó thể được suy luận từAnyEuityhoặc ngược lại. Ngoại lệ là kết quả đa hình của tỷ lệ kèo bóng đá 88AnyrangeYêu cầu đối số tỷ lệ kèo bóng đá 88Anyrange; nó không thể được suy luận từAnyArrayhoặcAnyEuityĐối số. Điều này là do có thể có nhiều tỷ lệ kèo bóng đá 88 phạm vi với cùng một tỷ lệ kèo bóng đá 88 phụ.

Lưu ý rằngAnynonarrayAnyenumKhông đại diện cho các biến tỷ lệ kèo bóng đá 88 riêng biệt; chúng giống nhưAnyEuity, chỉ với một ràng buộc bổ sung. Ví dụ: khai báo một hàm làf (AnyEuity, Anyenum)tương đương với việc khai báo nó làf (Anyenum, Anyenum): Cả hai đối số thực tế phải là cùng tỷ lệ kèo bóng đá 88 enum.

một hàm variadic (một người dùng một số lượng đối số, như trongPhần 37.4.5) Có thể đa hình: Điều này được thực hiện bằng cách khai báo tham số cuối cùng của nó làVariadic AnyArray. Đối với các mục đích của đối số khớp và xác định tỷ lệ kèo bóng đá 88 kết quả thực tế, một hàm như vậy hoạt động giống như khi bạn đã viết số lượng thích hợp củaAnynonarraytham số.