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

5.13. Theo dõi phụ kèo bóng đá hom nay

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ế độ xem, kích hoạt, chức năng của nước ngoài, v.v. Bạn hoàn toàn tạo ra một mạng phụ kèo bóng đá hom nay 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 đá hom nay 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 đá hom nay,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 đá hom nay vào. Ví dụ: cố gắng bỏ bảng sản phẩm chúng tôi đã xem xét trongPhần 5.3.5, với bảng đơn đặt hàng tùy kèo bóng đá hom nay vào nó, sẽ dẫn đến một thông báo lỗi như thế này:

Sản phẩm Bàn thả;

Lỗi: Không thể bỏ các sản phẩm bảng vì các đối tượng khác phụ kèo bóng đá hom nay vào nó
Chi tiết: Ràng buộc đơn hàng_product_no_fkey trên đơn đặt hàng phụ kèo bóng đá hom nay vào sản phẩm bảng
Gợi ý: Sử dụng thả ... Cascade để thả các đối tượng phụ kèo bóng đá hom nay quá.

Thông báo lỗi chứa một gợi ý hữu ích: Nếu bạn không muốn bận tâm xóa tất cả các đối tượng phụ kèo bóng đá hom nay, 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 đá hom nay sẽ bị xóa, cũng như bất kỳ đối tượng nào phụ kèo bóng đá hom nay 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. Nó dừng lại ở đó vì không có gì phụ kèo bóng đá hom nay vào ràng buộc quan trọng của nước ngoài. (Nếu bạn muốn kiểm tra cái gìDrop ... Cascadesẽ làm, chạythảkhông cóCascadevà đọcchi tiếtđầu ra.)

Hầu như tất cảthảlệnh trongPostgreSQLHỗ trợ Chỉ địnhCascade. Tất nhiên, bản chất của các phụ kèo bóng đá hom nay có thể thay đổi theo loại đối tượng. Bạn cũng có thể viết12655_12665thay 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 đá hom nay vào.

Lưu ý

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

Nếu AthảLệnh liệt kê nhiều đối tượng,13352_13361chỉ được yêu cầu khi có các phụ kèo bóng đá hom nay 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 kèo bóng đá hom nay chức năng do người dùng xác định,PostgreSQL13790_13916khôngSự phụ kèo bóng đá hom nay 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',
                             'Màu xanh lá cây', 'màu xanh', 'màu tím');

Tạo bảng my_colors (cầu vồng màu, văn bản ghi chú);

Tạo chức năng get_color_note (cầu vồng) trả về văn bản dưới dạng
  'Chọn Lưu ý từ my_colors trong đó màu = $ 1'
  Ngôn ngữ SQL;

(xemPhần 37.4để giải thích kèo bóng đá hom nay hàm ngôn ngữ SQL.)PostgreSQLsẽ biết rằngget_color_noteHàm phụ kèo bóng đá hom nay 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 đá hom nay vàomy_colors15009_15337