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 / 7.3
Tài kèo bóng đá hôm nay và ngày mai 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ế.

5.15. Theo dõi phụ kèo bóng đá hôm nay và ngày mai#

Khi bạn tạo các cấu trúc cơ sở dữ liệu phức tạp liên quan đến nhiều bảng có các ràng buộc chính, chế độ xem, kích hoạt, chức năng, v.v ... Bạn hoàn toàn tạo ra một mạng phụ kèo bóng đá hôm nay và ngày mai giữa các đối tượng. Chẳng hạn, một bảng có ràng buộc khóa nước ngoài phụ kèo bóng đá hôm nay và ngày mai vào bảng mà nó tham khảo.

Để đảm bảo tính toàn vẹn của toàn bộ cấu trúc cơ sở dữ kèo bóng đá hôm nay và ngày mai,PostgreSQLĐảm bảo rằng bạn không thể bỏ các đối tượng mà các đối tượng khác vẫn phụ kèo bóng đá hôm nay và ngày mai vào. Ví dụ: cố gắng bỏ bảng sản phẩm chúng tôi đã xem xét trongPhần 5.5.5, với bảng đơn đặt hàng tùy kèo bóng đá hôm nay và ngày mai vào nó, sẽ dẫn đến một thông báo lỗi như thế này:

Sản phẩm thả bảng;

Thông báo lỗi chứa một gợi ý hữu ích: Nếu bạn không muốn xóa tất cả các đối tượng phụ kèo bóng đá hôm nay và ngày mai, bạn có thể chạy:

DROP BẢNG SẢN PHẨM CASCADE;

Và tất cả các đối tượng phụ kèo bóng đá hôm nay và ngày mai sẽ bị xóa, cũng như bất kỳ đối tượng nào phụ kèo bóng đá hôm nay và ngày mai vào chúng, đệ quy. Trong trường hợp này, nó không xóa bảng đơn đặt hàng, nó chỉ loại bỏ các ràng buộc khóa nước ngoài.Drop ... Cascadesẽ làm, chạythảkhôngCascadevà đọcchi tiếtđầu ra.)

Hầu như tất cảthả12518_12533PostgreSQLHỗ trợ Chỉ địnhCascade. Tất nhiên, bản chất của các phụ kèo bóng đá hôm nay và ngày mai có thể thay đổi theo loại đối tượng.Hạn chếthay vìCascadeĐể có được hành vi mặc định, đó là để ngăn chặn các đối tượng mà bất kỳ đối tượng nào khác phụ kèo bóng đá hôm nay và ngày mai vào.

Lưu ý

kèo bóng đá hôm nay và ngày mai tiêu chuẩn SQL, chỉ địnhHạn chếhoặcCascadeđược yêu cầu trong AthảLệnh. Không có hệ thống cơ sở dữ kèo bóng đá hôm nay và ngày mai nào thực sự thực thi quy tắc đó, nhưng kèo bóng đá hôm nay và ngày mai hành vi mặc định làHạn chếhoặcCascadekhác nhau giữa các hệ thống.

Nếu ADropLệnh liệt kê nhiều đối tượng,Cascadechỉ được yêu cầu khi có các phụ kèo bóng đá hôm nay và ngày mai bên ngoài nhóm được chỉ định. Ví dụ, khi nóiTab Drop Tab1, Tab2Sự tồn tại của tham chiếu khóa nước ngoàiTab1từTAB2sẽ không có nghĩa làCascadelà cần thiết để thành công.

Đối với chức năng hoặc quy trình do người dùng xác địnhPostgreSQLTheo dõi các phụ kèo bóng đá hôm nay và ngày mai liên quan đến các kèo bóng đá hôm nay và ngày mai tính có thể nhìn nhận được của hàm, chẳng hạn như các loại đối số và kết quả của nó, nhưngkhôngSự phụ kèo bóng đá hôm nay và ngày mai chỉ có thể được biết đến bằng cách kiểm tra cơ thể chức năng. Ví dụ, hãy xem xét tình huống này:

Tạo loại cầu vồng dưới dạng enum ('đỏ', 'cam', 'vàng',

(xemPhần 36.5Để giải thích các hàm ngôn ngữ SQL.)PostgreSQLsẽ biết rằngget_color_noteHàm phụ kèo bóng đá hôm nay và ngày mai vàoRainbowLoại: Thả loại sẽ buộc bỏ chức năng, vì loại đối số của nó sẽ không còn được xác định. NhưngPostgreSQLsẽ không xem xétget_color_noteĐể phụ kèo bóng đá hôm nay và ngày mai vàomy_colorsBảng, và do đó sẽ không bỏ chức năng nếu bảng bị hủy. Mặc dù có những nhược điểm đối với phương pháp này, cũng có những lợi ích.

Mặt khác, đối với chức năng hoặc quy trình ngôn ngữ SQL có cơ thể được viết theo kiểu tiêu chuẩn SQL, cơ thể được phân tích cú pháp theo thời gian định nghĩa chức năng và tất cả các phụ kèo bóng đá hôm nay và ngày mai được phân tích viên công nhận. Do đó, nếu chúng ta viết hàm ở trên là

tạo chức năng get_color_note (cầu vồng) trả về văn bản

Sau đó, sự phụ kèo bóng đá hôm nay và ngày mai của chức năng vàomy_colorsBảng sẽ được biết đến và thi hành bởithả.