Mỗi danh mục có bất kỳ dữ tỷ lệ kèo bóng đá tối nay ban đầu được tạo bằng tay (một số không) có tương ứng.dat
Tệp chứa dữ tỷ lệ kèo bóng đá tối nay ban đầu của nó ở định dạng có thể chỉnh sửa.
mỗi.dat
Tệp chứa cấu trúc dữ tỷ lệ kèo bóng đá tối nay Perl theo nghĩa đen chỉ đơn giản là để tạo ra một cấu trúc dữ tỷ lệ kèo bóng đá tối nay trong bộ nhớ bao gồm một mảng các tài tỷ lệ kèo bóng đá tối nay tham khảo băm, một hàng trên mỗi hàng danh mục. Một đoạn trích được sửa đổi một chút từpg_database.dat
sẽ trình bày tỷ lệ kèo bóng đá tối nay tính năng chính:
[
Điểm để lưu ý:
Bố cục tập tin tổng thể là: Mở khung vuông, một hoặc nhiều bộ niềng răng xoăn mỗi thứ đại diện cho một hàng danh tỷ lệ kèo bóng đá tối nay, đóng khung vuông. Viết dấu phẩy sau mỗi lần đóng giằng xoăn.
Trong mỗi hàng danh tỷ lệ kèo bóng đá tối nay, hãy viết dấu phẩyKey
=
giá trị
cặp. Cho phépKey
S là tên của các cột của danh mục, cộng với các khóa siêu dữ tỷ lệ kèo bóng đá tối nayoid
, oid_symbol
vàDescr
. (Việc sử dụngoid
vàoid_symbol
được mô tả trongPhần 70.2.2bên dưới.Descr
cung cấp chuỗi mô tả cho đối tượng, sẽ được chèn vàopg_descrip
hoặcpg_shdescrip
khi thích hợp.) Trong khi các phím siêu dữ tỷ lệ kèo bóng đá tối nay là tùy chọn, tất cả các cột được xác định của danh mục phải được cung cấp, ngoại trừ khi danh mục của.h
Tệp Chỉ định giá trị mặc định cho cột.
Tất cả tỷ lệ kèo bóng đá tối nay giá trị phải được trích dẫn đơn. tỷ lệ kèo bóng đá tối nay trích dẫn đơn lẻ được sử dụng trong một giá trị với dấu gạch chéo ngược.Phần 4.1.2.2); Ví dụ\ T
Chuyển đổi thành một ký tự tab. Nếu bạn thực sự muốn một dấu gạch chéo ngược trong giá trị cuối cùng, bạn sẽ cần phải viết bốn trong số chúng: Perl Strips Two, rời khỏi\
Để máy quét bootstrap xem.
Giá trị null được biểu diễn bằng_null_
. (Lưu ý rằng không có cách nào để tạo một giá trị chỉ là chuỗi đó.)
Nhận xét được đi trước#
, và phải ở trên đường của riêng họ.
Để hỗ trợ khả năng đọc, các giá trị trường là OID của các tỷ lệ kèo bóng đá tối nay danh tỷ lệ kèo bóng đá tối nay khác có thể được biểu diễn bằng các tên thay vì OID số. Điều này được mô tả trongPhần 70.2.3bên dưới.
Vì các băm là các cấu trúc dữ tỷ lệ kèo bóng đá tối nay không có thứ tự, thứ tự trường và bố cục dòng không có ý nghĩa về mặt ngữ nghĩa. Tuy nhiên, để duy trì ngoại hình nhất quán, chúng tôi đặt một vài quy tắc được áp dụng bởi tập lệnh định dạngReformat_dat_file.pl
:
Trong mỗi cặp niềng răng xoăn, các trường siêu dữ tỷ lệ kèo bóng đá tối nayOID
, oid_symbol
vàDescr
(nếu có) đến trước, theo thứ tự đó, sau đó các trường riêng của danh tỷ lệ kèo bóng đá tối nay xuất hiện theo thứ tự được xác định của chúng.
Newlines được chèn giữa các trường khi cần thiết để giới hạn độ dài dòng xuống 80 ký tự, nếu có thể. Một dòng mới cũng được chèn giữa các trường siêu dữ tỷ lệ kèo bóng đá tối nay và các trường chính quy.
Nếu danh tỷ lệ kèo bóng đá tối nay của.h
Tệp Chỉ định giá trị mặc định cho cột và mục nhập dữ tỷ lệ kèo bóng đá tối nay có cùng giá trị đó,Reformat_dat_file.pl
Sẽ bỏ qua nó từ tệp dữ tỷ lệ kèo bóng đá tối nay. Điều này giữ cho biểu diễn dữ tỷ lệ kèo bóng đá tối nay nhỏ gọn.
Refleat_dat_file.pl
Bảo tồn tỷ lệ kèo bóng đá tối nay dòng trống và tỷ lệ kèo bóng đá tối nay dòng bình luận AS-IS.
Nên chạyReformat_dat_file.pl
Trước khi gửi các bản vá dữ tỷ lệ kèo bóng đá tối nay danh mục. Để thuận tiện, bạn chỉ có thể thay đổi thànhsrc/bao gồm/catalog/
và chạyLàm cho ReforTat-Dat-Files
.
Nếu bạn muốn thêm một phương thức mới để làm cho biểu diễn dữ tỷ lệ kèo bóng đá tối nay nhỏ hơn, bạn phải thực hiện nó trongReformat_dat_file.pl
và cũng dạyDanh tỷ lệ kèo bóng đá tối nay :: Parsedata ()
Cách mở rộng dữ tỷ lệ kèo bóng đá tối nay trở lại thành đại diện đầy đủ.
Một hàng danh mục xuất hiện trong dữ tỷ lệ kèo bóng đá tối nay ban đầu có thể được đưa ra một OID được chỉ định bằng thủ công bằng cách viếtoid =
Trường siêu dữ tỷ lệ kèo bóng đá tối nay. Hơn nữa, nếu một OID được gán, một macro C cho OID đó có thể được tạo bằng cách viết mộtnnnn
oid_symbol =
Trường siêu dữ tỷ lệ kèo bóng đá tối nay.tên
Các hàng danh tỷ lệ kèo bóng đá tối nay được tải sẵn phải có OID được chỉ định trước nếu có các tham chiếu OID cho chúng trong các hàng được tải sẵn khác. Một OID được chỉ định trước cũng cần thiết nếu OID của hàng phải được tham chiếu từ mã C.OID
Trường siêu dữ tỷ lệ kèo bóng đá tối nay có thể được bỏ qua, trong trường hợp đó, mã bootstrap gán một OID tự động hoặc để lại 0 trong một danh mục không có OID. Trong thực tế, chúng tôi thường chỉ định các OID cho tất cả hoặc không có hàng được tải sẵn trong một danh mục nhất định, ngay cả khi chỉ một số trong số chúng thực sự được tham chiếu chéo.
Viết giá trị số thực tế của bất kỳ OID nào trong mã C được coi là dạng rất xấu; Thay vào đó, luôn luôn sử dụng một macro.PG_PROC
OIDS đủ phổ biến để có một cơ chế đặc biệt để tạo tỷ lệ kèo bóng đá tối nay macro cần thiết tự động; nhìn thấysrc/backend/utils/gen_fmgrtab.pl
. Tương tự - nhưng, vì lý do lịch sử, không được thực hiện theo cùng một cách - có một phương thức tự động để tạo macro chopg_type
oids.oid_symbol
Do đó không cần thiết trong hai danh tỷ lệ kèo bóng đá tối nay đó. Tương tự như vậy, macro chopg_ class
OIDS của các danh mục và chỉ tỷ lệ kèo bóng đá tối nay được thiết lập tự động. Đối với tất cả các danh tỷ lệ kèo bóng đá tối nay khác, bạn phải chỉ định thủ công bất kỳ macro nào bạn cần quaoid_symbol
tỷ lệ kèo bóng đá tối nay nhập.
Để tìm một OID có sẵn cho một hàng mới được tải sẵn, chạy tập lệnhsrc/bao gồm/catalog/unude_oids
. Nó in phạm vi bao gồm tỷ lệ kèo bóng đá tối nay OID chưa sử dụng (ví dụ: dòng đầu ra45-900có nghĩa là OIDS 45 đến 900 chưa được phân bổ). Hiện tại, OIDS 1-9999 được dành riêng để phân công thủ công;uned_oids
Tập lệnh chỉ cần xem qua các tiêu đề danh tỷ lệ kèo bóng đá tối nay và.dat
Tệp để xem cái nào không xuất hiện. Bạn cũng có thể sử dụngtrùng lặp_oids
Kịch bản để kiểm tra sai lầm. (Genbki.pl
cũng sẽ phát hiện tỷ lệ kèo bóng đá tối nay OID trùng lặp tại thời điểm biên dịch.)
Bộ đếm OID bắt đầu ở 10000 khi bắt đầu chạy bootstrap. Nếu một hàng danh tỷ lệ kèo bóng đá tối nay nằm trong một bảng yêu cầu OID, nhưng không có oid nào được chỉ định trước mộtoid
Trường, sau đó nó sẽ nhận được OID từ 10000 trở lên.
Tham khảo chéo từ một hàng danh tỷ lệ kèo bóng đá tối nay ban đầu sang hàng khác có thể được viết bằng cách chỉ viết OID được chỉ định trước của hàng được tham chiếu. Nhưng đó là dễ hiểu lỗi và khó hiểu, vì vậy đối với các danh tỷ lệ kèo bóng đá tối nay thường được tham chiếu,Genbki.pl
cung cấp các cơ chế để viết các tài tỷ lệ kèo bóng đá tối nay tham khảo tượng trưng thay thế. Hiện tại điều này có thể cho các tham chiếu đến các phương thức truy cập, chức năng, toán tử, opclass, opfamilies và loại.
Sử dụng các tài tỷ lệ kèo bóng đá tối nay tham khảo tượng trưng được bật trong một cột danh mục cụ thể bằng cách đính kèmbki_lookup (
Theo định nghĩa của cột, trong đóLookUprule
)lookupule
làpg_am
, pg_proc
, pg_operator
, pg_opclass
, pg_opf Family
hoặcpg_type
. BKI_Lookup
có thể được gắn vào tỷ lệ kèo bóng đá tối nay cột loạioid
, RegProc
, oidvector
hoặcoid []
; Trong hai trường hợp sau, nó ngụ ý thực hiện tra cứu trên từng phần tử của mảng.
Trong một cột như vậy, tất cả các tỷ lệ kèo bóng đá tối nay phải sử dụng định dạng tượng trưng ngoại trừ khi viết0
cho không hợp lệ. (Nếu cột được khai báoRegProc
, bạn có thể viết tùy ý-
thay vì0
.)Genbki.pl
Sẽ cảnh báo về tỷ lệ kèo bóng đá tối nay tên không được công nhận.
Phương thức truy cập chỉ được thể hiện bằng tên của chúng, như tỷ lệ kèo bóng đá tối nay loại. Tên loại phải khớp với tham chiếuPG_TYPE
Entry'sTYPNAME
; Bạn không được sử dụng bất kỳ bí danh nào nhưSố nguyên
choINT4
.
Một hàm có thể được biểu diễn bằng của nóproname
, nếu đó là duy nhất trong sốpg_proc.dat
tỷ lệ kèo bóng đá tối nay (hoạt động như đầu vào regproc). Nếu không, hãy viết nó dưới dạngproname (argtypename, argtypename, ...)
, giống như regprocedure. Tên loại đối số phải được đánh vần chính xác như trongpg_proc.dat
Entry'sproArgTypes
Trường. Không chèn bất kỳ khoảng trống nào.
toán tử được đại diện bởi, viết tên loại chính xác như chúng xuất hiện trong
pg_operator.dat
Entry'sOprleft
vàoprright
Trường. (Viết0
Đối với toán hạng bị bỏ qua của một toán tử Unary.)
22125_22233access_method_name
/
object_name
.
Trong không có trường hợp nào trong số này có bất kỳ điều khoản nào cho trình độ sơ đồ lược đồ; Tất cả tỷ lệ kèo bóng đá tối nay đối tượng được tạo trong bootstrap dự kiến sẽ nằm trong lược đồ pg_catalog.
Genbki.pl
Giải quyết tất cả các tham chiếu tượng trưng trong khi nó chạy và đặt các OID số đơn giản vào tệp BKI phát ra. Do đó, không cần phụ trợ bootstrap để đối phó với các tài tỷ lệ kèo bóng đá tối nay tham khảo tượng trưng.
Dưới đây là một số gợi ý về các cách dễ nhất để thực hiện các tác vụ chung khi cập nhật các tệp dữ tỷ lệ kèo bóng đá tối nay danh mục.
Thêm một cột mới với mặc định vào một danh tỷ lệ kèo bóng đá tối nay:Thêm cột vào tệp tiêu đề vớiBKI_DEFAULT (
Chú thích. Tệp dữ tỷ lệ kèo bóng đá tối nay chỉ cần được điều chỉnh bằng cách thêm trường vào các hàng hiện tại khi cần giá trị không mặc định.giá trị
)
Thêm giá trị mặc định vào cột hiện có không có:Thêm ABKI_DEFAULT
Chú thích vào tệp tiêu đề, sau đó chạyLàm cho ReforTat-Dat-Files
Để xóa các tỷ lệ kèo bóng đá tối nay nhập trường hiện đang có.
Xóa một cột, cho dù nó có mặc định hay không:Xóa cột khỏi tiêu đề, sau đó chạyLàm cho Reformat-Dat-Files
Để xóa các tỷ lệ kèo bóng đá tối nay nhập trường không có gì.
Thay đổi hoặc xóa giá trị mặc định hiện có:Bạn không thể chỉ cần thay đổi tệp tiêu đề, vì điều đó sẽ khiến dữ tỷ lệ kèo bóng đá tối nay hiện tại được giải thích không chính xác. Chạy đầu tiênLàm cho mở rộng-DAT-FILES
Để viết lại các tệp dữ tỷ lệ kèo bóng đá tối nay với tất cả các giá trị mặc định được chèn một cách rõ ràng, sau đó thay đổi hoặc xóaBKI_DEFAULT
chú thích, sau đó chạyLàm cho ReforTat-Dat-Files
Để xóa tỷ lệ kèo bóng đá tối nay trường thừa.
Chỉnh sửa số lượng lớn ad-hoc: Refleat_dat_file.pl
có thể được điều chỉnh để thực hiện nhiều loại thay đổi số lượng lớn. Tìm kiếm tỷ lệ kèo bóng đá tối nay bình luận khối của nó hiển thị nơi có thể chèn mã một lần.PG_PROC
thành một trường char:
Thêm cột mới, với mặc định, vàopg_proc.h
:
+ / * Xem các danh tỷ lệ kèo bóng đá tối nay prokind_ bên dưới * /
Tạo tập lệnh mới dựa trênReformat_dat_file.pl
Để chèn tỷ lệ kèo bóng đá tối nay giá trị thích hợp trên đường bay:
- # Tại thời điểm này, chúng ta có hàng đầy đủ trong bộ nhớ dưới dạng băm
Chạy tập lệnh mới:
$ cd src/bao gồm/danh tỷ lệ kèo bóng đá tối nay
Tại thời điểm nàypg_proc.dat
Có cả ba cột,Prokind
, proisagg
vàProisWindow
, mặc dù chúng sẽ chỉ xuất hiện trong tỷ lệ kèo bóng đá tối nay hàng mà chúng có tỷ lệ kèo bóng đá tối nay giá trị không mặc định.
Xóa tỷ lệ kèo bóng đá tối nay cột cũ khỏipg_proc.h
:
- /* Nó có phải là một tổng hợp không? */
Cuối cùng, chạyLàm cho ReforTat-Dat-Files
Để loại bỏ các tỷ lệ kèo bóng đá tối nay cũ vô dụng khỏipg_proc.dat
.
Để biết thêm tỷ lệ kèo bóng đá tối nay ví dụ về tỷ lệ kèo bóng đá tối nay tập lệnh được sử dụng để chỉnh sửa số lượng lớn, xemConvert_oid2Name.pl
vàremove_pg_type_oid_symbols.pl
Được đính kèm với tin nhắn này: