PostgreSQL: kèo chấp bóng đá | |||
---|---|---|---|
prev | UP | Chương 5. Định nghĩa dữ liệu | NEXT |
Mỗi bảng có kèo bóng đá euro sốkèo bóng đá eurođược định nghĩa ngầm bởi hệ thống. Do đó, những tên này không thể được sử dụng làm tên của các kèo bóng đá euro do người dùng xác định. . chỉ biết chúng tồn tại.
Mã định danh đối tượng (ID đối tượng) của một hàng. kèo bóng đá euro này chỉ có mặt nếu bảng được tạo bằngvới oidshoặc nếudefault_with_oidsBiến cấu hình được đặt vào thời điểm đó. kèo bóng đá euro này thuộc loạioid(cùng tên với kèo bóng đá euro); nhìn thấyPhần 8.18Để biết thêm thông tin về loại.
oid của bảng chứa hàng này. kèo bóng đá euro này đặc biệt tiện dụng cho các truy vấn chọn từ phân cấp kế thừa (xemPhần 5.8), vì không có nó, thật khó để biết bảng cá nhân nào kèo bóng đá euro hàng đến từ. TheTableoidCó thể tham gia vớioidkèo bóng đá euro củapg_ classĐể có được tên bảng.
Bản sắc (ID giao dịch) của giao dịch chèn cho phiên bản kèo bóng đá euro này. .
Định danh lệnh (bắt đầu từ 0) trong giao dịch chèn.
Danh tính (ID giao dịch) của giao dịch xóa hoặc không cho phiên bản hàng không có kết quả. kèo bóng đá euro này có thể là không khác biệt trong phiên bản hàng có thể nhìn thấy. Điều đó thường chỉ ra rằng giao dịch xóa chưa được thực hiện hoặc việc xóa đã cố gắng được quay lại.
Định danh lệnh trong giao dịch xóa hoặc không.
Vị trí vật lý của phiên bản kèo bóng đá euro trong bảng của nó. Lưu ý rằng mặc dùCTIDcó thể được sử dụng để định vị phiên bản hàng rất nhanh, kèo bóng đá euro hàngCTIDSẽ thay đổi nếu được cập nhật hoặc di chuyển bởiNút không đầy đủ. Vì thếCTIDlà vô dụng như một định danh hàng dài hạn. OID, hoặc thậm chí tốt hơn một số sê-ri do người dùng xác định, nên được sử dụng để xác định kèo bóng đá euro hàng logic.
OIDS có số lượng 32 bit và được gán từ một bộ đếm toàn bộ cụm. Trong một cơ sở dữ liệu lớn hoặc tồn tại lâu, có thể bộ đếm bao quanh. Do đó, thực tế là xấu khi cho rằng OID là duy nhất, trừ khi bạn thực hiện kèo bóng đá euro bước để đảm bảo rằng đây là trường hợp. Nếu bạn cần xác định kèo bóng đá euro hàng trong bảng, sử dụng trình tạo chuỗi được khuyến nghị mạnh mẽ. Tuy nhiên, OIDS cũng có thể được sử dụng, với điều kiện là một vài biện pháp phòng ngừa bổ sung được thực hiện:
Một ràng buộc duy nhất nên được tạo trên kèo bóng đá euro OID của mỗi bảng mà OID sẽ được sử dụng để xác định các hàng. Khi một ràng buộc duy nhất như vậy (hoặc chỉ mục duy nhất) tồn tại, hệ thống sẽ không cần tạo ra một OID phù hợp với một hàng đã tồn tại. (Tất nhiên, điều này chỉ có thể nếu bảng chứa ít hơn 232(4 tỷ) kèo bóng đá euro và trong thực tế, kích thước bảng tốt hơn nhiều so với điều đó, hoặc hiệu suất có thể bị ảnh hưởng.)
OIDS không bao giờ được coi là duy nhất trên kèo bóng đá euro bảng; Sử dụng kết hợp củaTableoidvà hàng oid nếu bạn cần kèo bóng đá euro định danh toàn cơ sở dữ liệu.
Tất nhiên, kèo bóng đá euro bảng được đề cập phải được tạovới oids. Kể từPostgreSQL8.1,không có oidslà mặc định.
Định danh giao dịch cũng là số lượng 32 bit. Trong một cơ sở dữ liệu tồn tại lâu dài, ID giao dịch có thể bao quanh. Đây không phải là một vấn đề nghiêm trọng với kèo bóng đá euro thủ tục bảo trì thích hợp; nhìn thấyChương 23Để biết chi tiết. Tuy nhiên, không khôn ngoan, phụ thuộc vào tính duy nhất của ID giao dịch trong dài hạn (hơn kèo bóng đá euro tỷ giao dịch).
Định danh lệnh cũng là số lượng 32 bit. Điều này tạo ra giới hạn cứng là 232(4 tỷ)SQLkèo bóng đá euro lệnh trong một giao dịch. Trong thực tế, giới hạn này không phải là một vấn đề - lưu ý rằng giới hạn thuộc về số lượngSQLkèo bóng đá euro lệnh, không phải số lượng hàng được xử lý. Ngoài ra, chỉ kèo bóng đá euro lệnh thực sự sửa đổi nội dung cơ sở dữ liệu sẽ tiêu thụ một định danh lệnh.