Phiên bản được hỗ trợ:hiện tại(173631_376216 / 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 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 tỷ lệ kèo bóng đá trực tuyến hôm nay phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

5,8. Kế tỷ lệ kèo bóng đá trực tuyến hôm nay

PostgreSQLBảng thực hiện Kế tỷ lệ kèo bóng đá trực tuyến hôm nay, có thể là một công cụ hữu ích cho các nhà thiết kế cơ sở dữ liệu. (SQL: 1999 và sau đó xác định tính năng tỷ lệ kèo bóng đá trực tuyến hôm nay kế loại, mà khác nhau ở nhiều khía cạnh so với các tính năng được mô tả ở đây.)

Hãy bắt đầu với một ví dụ: Giả sử chúng ta đang cố gắng xây dựng một Mô hình dữ liệu cho các thành phố. Mỗi tiểu bang có nhiều thành phố, nhưng chỉ một thủ đô. Chúng tôi muốn có thể nhanh chóng lấy lại thành phố thủ đô cho bất kỳ trạng thái cụ thể. Điều này có thể được thực hiện bằng cách tạo hai bảng, một cho thủ đô nhà nước và một cho các thành phố không phải là thủ đô. Tuy nhiên, những gì xảy ra khi chúng tôi muốn hỏi dữ liệu về một thành phố, Bất kể đó có phải là vốn hay không? Sự tỷ lệ kèo bóng đá trực tuyến hôm nay kế Tính năng có thể giúp giải quyết vấn đề này. Chúng tôi xác địnhThủ đôBảng để nó kế tỷ lệ kèo bóng đá trực tuyến hôm nay từThành phố:

Tạo các thành phố bảng (
    tên văn bản,
    Dân số nổi,
    độ cao int - tính bằng chân
);

Tạo bảng xếp hạng (
    Nhà nước Char (2)
) Kế tỷ lệ kèo bóng đá trực tuyến hôm nay (thành phố);

Trong trường hợp này,Thủ đôtỷ lệ kèo bóng đá trực tuyến hôm naykế tỷ lệ kèo bóng đá trực tuyến hôm nayTất cả tỷ lệ kèo bóng đá trực tuyến hôm nay cột của cha mẹ của nó bàn,Thành phố. Thủ đô nhà nước cũng có Một cột phụ,Bang, hiển thị trạng thái của họ.

inPostgreSQL, một bảng có thể kế tỷ lệ kèo bóng đá trực tuyến hôm nay từ số 0 hoặc nhiều bảng khác và một truy vấn có thể tham chiếu Tất cả các hàng của bảng hoặc tất cả các hàng của bảng cộng với tất cả Bàn hậu duệ. Hành vi sau là mặc định. Ví dụ, Truy vấn sau đây tìm thấy tên của tất cả các thành phố, bao gồm cả tiểu bang Thủ đô, nằm ở độ cao trên 500 feet:

Chọn tên, độ cao
    Từ tỷ lệ kèo bóng đá trực tuyến hôm nay thành phố
    Nơi độ cao 500;

Cho dữ liệu mẫu từPostgreSQLHướng dẫn (xemPhần 2.112043_12061

Tên | độ cao
-----------+----------
 Las Vegas |     2174
 Mariposa |     1953
 Madison |      845

Mặt khác, truy vấn sau đây tìm thấy tất cả tỷ lệ kèo bóng đá trực tuyến hôm nay thành phố không phải là thủ đô nhà nước và nằm ở độ cao trên 500 bàn chân:

Chọn tên, độ cao
    Chỉ từ tỷ lệ kèo bóng đá trực tuyến hôm nay thành phố
    Trong đó độ cao 500;

   Tên | độ cao
-----------+----------
 Las Vegas |     2174
 Mariposa |     1953

ở đâychỉTừ khóa chỉ ra rằng Truy vấn chỉ áp dụng choThành phố,, và không phải bất kỳ tỷ lệ kèo bóng đá trực tuyến hôm nay nào bên dướiThành phốTrong Phân cấp kế tỷ lệ kèo bóng đá trực tuyến hôm nay. Nhiều lệnh mà chúng tôi đã có đã thảo luận -Chọn, Cập nhậtXóa- Hỗ trợ ThechỉTừ khóa.

Bạn cũng có thể viết tên tỷ lệ kèo bóng đá trực tuyến hôm nay bằng dấu vết*Để xác định rõ ràng rằng các tỷ lệ kèo bóng đá trực tuyến hôm nay hậu duệ là Bao gồm:

Chọn tên, độ cao
    Từ tỷ lệ kèo bóng đá trực tuyến hôm nay thành phố*
    Nơi độ cao 500;

Viết*không cần thiết, vì điều này Hành vi là mặc định (trừ khi bạn đã thay đổi cài đặt củaSQL_InheritanceTùy chọn cấu hình). Tuy nhiên viết*có thể hữu ích để nhấn mạnh rằng các tỷ lệ kèo bóng đá trực tuyến hôm nay bổ sung sẽ đã tìm kiếm.

Trong một số trường hợp, bạn có thể muốn biết tỷ lệ kèo bóng đá trực tuyến hôm nay nào cụ thể Hàng có nguồn gốc từ. Có một cột hệ thống được gọi làTableoidTrong mỗi tỷ lệ kèo bóng đá trực tuyến hôm nay có thể cho bạn biết tỷ lệ kèo bóng đá trực tuyến hôm nay gốc:

Chọn C.Tableoid, C.Name, C.altitude
Từ tỷ lệ kèo bóng đá trực tuyến hôm nay thành phố c
Trong đó C.altitude 500;

Trở lại:

Tableoid |   Tên | độ cao
----------+-----------+----------
   139793 | Las Vegas |     2174
   139793 | Mariposa |     1953
   139798 | Madison |      845

(Nếu bạn cố gắng sao chép ví dụ này, có lẽ bạn sẽ nhận được tỷ lệ kèo bóng đá trực tuyến hôm nay oid số khác nhau.) Bằng cách thực hiện tham gia vớipg_ classBạn có thể thấy tên tỷ lệ kèo bóng đá trực tuyến hôm nay thực tế:

Chọn p.relname, c.name, c.altitude
Từ tỷ lệ kèo bóng đá trực tuyến hôm nay thành phố C, pg_class p
Trong đó C.altitude 500 và c.tableoid = p.oid;

Trở lại:

Relname |   Tên | độ cao
----------+-----------+----------
 Thành phố | Las Vegas |     2174
 Thành phố | Mariposa |     1953
 Thủ đô | Madison |      845

Kế tỷ lệ kèo bóng đá trực tuyến hôm nay không tự động truyền dữ liệu từChènhoặcCopyCác lệnh cho các bảng khác trong phân cấp kế tỷ lệ kèo bóng đá trực tuyến hôm nay. Trong của chúng tôi Ví dụ, sau đâyChènTuyên bố sẽ thất bại:

14987_15083

Chúng tôi có thể hy vọng rằng dữ liệu bằng cách nào đó sẽ được chuyển đếnThủ đôtỷ lệ kèo bóng đá trực tuyến hôm nay, nhưng điều này không xảy ra:Chènluôn luôn chèn vào chính xác tỷ lệ kèo bóng đá trực tuyến hôm nay được chỉ định. Trong một số trường hợp, có thể chuyển hướng Đ chèn bằng quy tắc (xemChương 3815409_15472Thành phốtỷ lệ kèo bóng đá trực tuyến hôm nay không chứa CộtBang, và do đó, lệnh sẽ bị từ chối trước khi quy tắc có thể được áp dụng.

15650_15858

Bảng có thể kế tỷ lệ kèo bóng đá trực tuyến hôm nay từ nhiều bảng cha mẹ, trong đó trường hợp nó có sự kết hợp của các cột được xác định bởi các bảng cha mẹ. Bất kỳ cột nào được khai báo trong định nghĩa của bảng con đều được thêm vào những cái này. Nếu cùng một tên cột xuất hiện trong nhiều bảng cha mẹ, hoặc trong cả bảng cha mẹ và định nghĩa của trẻ, sau đó Các cột là"Hợp nhất"để có Chỉ có một cột như vậy trong tỷ lệ kèo bóng đá trực tuyến hôm nay con. Để được hợp nhất, các cột phải Có cùng loại dữ liệu, nếu không một lỗi được nêu ra. Sự hợp nhất Cột sẽ có bản sao của tất cả các ràng buộc kiểm tra đến từ bất kỳ một trong các định nghĩa cột nó đến từ và sẽ được đánh dấu không null nếu có ai trong số họ là.

Kế tỷ lệ kèo bóng đá trực tuyến hôm nay bảng thường được thiết lập khi bảng con được tạo, sử dụngkế tỷ lệ kèo bóng đá trực tuyến hôm naymệnh đề của ThePostgreSQL: Tài liệu: 9.3: kèo bóngTuyên bố. Ngoài ra, một tỷ lệ kèo bóng đá trực tuyến hôm nay đã được định nghĩa theo cách tương thích có thể được thêm vào mối quan hệ cha mẹ mới, sử dụngkế tỷ lệ kèo bóng đá trực tuyến hôm nayBiến thể củatỷ lệ kèo bóng đá trực tuyến hôm nay thay đổi. Để làm điều này, đứa trẻ mới bảng phải bao gồm các cột có cùng tên và loại các cột của cha mẹ. Nó cũng phải bao gồm các ràng buộc kiểm tra với cùng tên và kiểm tra biểu thức như của cha mẹ. Tương tự, một liên kết kế tỷ lệ kèo bóng đá trực tuyến hôm nay có thể được xóa khỏi một đứa trẻ bằng cách sử dụngKhông kế tỷ lệ kèo bóng đá trực tuyến hôm nayBiến thể củatỷ lệ kèo bóng đá trực tuyến hôm nay thay đổi. Thêm và loại bỏ động Các liên kết kế tỷ lệ kèo bóng đá trực tuyến hôm nay như thế này có thể hữu ích khi tỷ lệ kèo bóng đá trực tuyến hôm nay kế Mối quan hệ đang được sử dụng để phân vùng bảng (xemPhần 5.9).

Một cách thuận tiện để tạo một tỷ lệ kèo bóng đá trực tuyến hôm nay tương thích mà sau này sẽ được làm một đứa trẻ mới là sử dụngnhưmệnh đề trongTạo tỷ lệ kèo bóng đá trực tuyến hôm nay. Điều này tạo ra một cái mới tỷ lệ kèo bóng đá trực tuyến hôm nay có cùng cột với tỷ lệ kèo bóng đá trực tuyến hôm nay nguồn. Nếu cóKiểm traCác ràng buộc được xác định trên nguồn tỷ lệ kèo bóng đá trực tuyến hôm nay, Thebao gồm tỷ lệ kèo bóng đá trực tuyến hôm nay ràng buộcTùy chọn thànhnhư17970_18081

Bàn cha mẹ không thể bị loại bỏ trong khi bất kỳ đứa con nào của nó duy trì. Không thể kiểm tra các cột hoặc kiểm tra các ràng buộc của bảng con bị bỏ hoặc thay đổi nếu chúng được kế tỷ lệ kèo bóng đá trực tuyến hôm nay từ bất kỳ bảng cha mẹ nào. Nếu như Bạn muốn loại bỏ một cái bàn và tất cả con cháu của nó, một cách dễ dàng là bỏ bảng cha mẹ bằngCascadetùy chọn.

BẢNG ALTERSẽ tuyên truyền bất kỳ các thay đổi trong định nghĩa dữ liệu cột và kiểm tra các ràng buộc Phân cấp kế tỷ lệ kèo bóng đá trực tuyến hôm nay. Một lần nữa, các cột thả phụ thuộc vào bởi các bảng khác chỉ có thể khi sử dụngCascadeTùy chọn.tỷ lệ kèo bóng đá trực tuyến hôm nay thay đổituân theo tỷ lệ kèo bóng đá trực tuyến hôm nay quy tắc tương tự để hợp nhất cột trùng lặp và từ chối áp dụng trongTạo tỷ lệ kèo bóng đá trực tuyến hôm nay.

18892_19255

5.8.1. Hãy cẩn thận

Lưu ý rằng không phải tất cả các lệnh SQL đều có thể làm việc trên kế tỷ lệ kèo bóng đá trực tuyến hôm nay Phân cấp. Các lệnh được sử dụng để truy vấn dữ liệu, dữ liệu sửa đổi hoặc sửa đổi lược đồ (ví dụ:Chọn, Cập nhật, Xóa, Hầu hết tỷ lệ kèo bóng đá trực tuyến hôm nay biến thể củaThay đổi BÀN, nhưng khôngChènhoặctỷ lệ kèo bóng đá trực tuyến hôm nay thay đổi ... Đổi tên) Thông thường mặc định là mặc định bao gồm các tỷ lệ kèo bóng đá trực tuyến hôm nay con và hỗ trợchỉKý hiệu để loại trừ chúng. tỷ lệ kèo bóng đá trực tuyến hôm nay lệnh làm Bảo trì và điều chỉnh cơ sở dữ liệu (ví dụ:Reindex, Nút hút) Thông thường Chỉ làm việc trên các bảng cá nhân, vật lý và không hỗ trợ đệ quy trên hệ thống phân cấp tỷ lệ kèo bóng đá trực tuyến hôm nay kế. Hành vi tương ứng của Mỗi lệnh riêng lẻ được ghi lại trong trang tham chiếu của nó (Tham khảo I,SQL Lệnh).

Giới hạn nghiêm trọng của tính năng kế tỷ lệ kèo bóng đá trực tuyến hôm nay là các chỉ mục (chỉ bao gồm các ràng buộc duy nhất) và các ràng buộc chính của nước ngoài Áp dụng cho các bảng đơn, không phải cho trẻ em tỷ lệ kèo bóng đá trực tuyến hôm nay kế của họ. Đây là Đúng trên cả hai mặt tham chiếu và tham chiếu của khóa nước ngoài ràng buộc. Do đó, trong các điều khoản của ví dụ trên:

  • Nếu chúng ta khai báoThành phố.tênTo Beđộc đáohoặc AKhóa chính, Điều này sẽ không dừngThủ đôtỷ lệ kèo bóng đá trực tuyến hôm nay từ có hàng có Tên sao chép các hàng trongThành phố. Và Những hàng trùng lặp đó theo mặc định sẽ hiển thị trong tỷ lệ kèo bóng đá trực tuyến hôm nay truy vấn từThành phố. Trên thực tế, theo mặc địnhThủ đôsẽ không có ràng buộc duy nhất nào cả, và do đó có thể chứa nhiều hàng có cùng tên. Bạn có thể Thêm một ràng buộc duy nhất vàoThủ đô,, Nhưng điều này sẽ không ngăn chặn sự trùng lặp so vớiThành phố.

  • Tương tự, nếu chúng ta chỉ định rằngThành phố.tên Tài liệu tham khảoMột số tỷ lệ kèo bóng đá trực tuyến hôm nay khác, cái này ràng buộc sẽ không tự động tuyên truyền đến21632_21642. Trong trường hợp này bạn có thể làm việc xung quanh nó bằng cách thêm thủ công cùng mộtTài liệu tham khảoràng buộc đối vớiThủ đô.

  • Chỉ định rằng cột của một tỷ lệ kèo bóng đá trực tuyến hôm nay khácTài liệu tham khảo Thành phố (Tên)sẽ cho phép tỷ lệ kèo bóng đá trực tuyến hôm nay khác để chứa tên thành phố, nhưng không phải tên vốn. Không có tốt giải pháp cho trường hợp này.

Những thiếu sót này có thể sẽ được khắc phục trong một số tương lai phát hành, nhưng trong thời gian chờ đợi sự chăm sóc đáng kể là cần thiết trong quyết định xem kế tỷ lệ kèo bóng đá trực tuyến hôm nay có hữu ích cho ứng dụng của bạn không.