Postgresql 9.3.25 Tài liệu | ||||
---|---|---|---|---|
prev | UP | Chương 35. tỷ lệ kèo bóng đá 88SQL | NEXT |
Một tiện ích tỷ lệ kèo bóng đá 88 hữu ích choPostgreSQLthường bao gồm nhiều SQL đối tượng; Ví dụ: tỷ lệ kèo bóng đá 88 loại dữ liệu mới sẽ yêu cầu các chức năng mới, Các nhà khai thác mới, và có thể là các lớp toán tử chỉ mục mới. Nó là hữu ích để thu thập tất cả các đối tượng này vào tỷ lệ kèo bóng đá 88 gói duy nhất để đơn giản hóa quản lý cơ sở dữ liệu.9855_9867gọi tỷ lệ kèo bóng đá 88 gói như vậytỷ lệ kèo bóng đá 88. Để xác định một phần tỷ lệ kèo bóng đá 88, bạn cần ở ít nhất aTập tin tập lệnhchứaSQLlệnh để tạo các đối tượng của tiện ích tỷ lệ kèo bóng đá 88 và mộtTệp điều khiển10159_10384Tạo tiện ích tỷ lệ kèo bóng đá 88Lệnh tải Đối tượng vào cơ sở dữ liệu của bạn.
Ưu điểm chính của việc sử dụng tiện ích tỷ lệ kèo bóng đá 88, thay vì chỉ ChạySQLtập lệnh để tải a Bunch of"Loose"Đối tượng vào của bạn cơ sở dữ liệu, đó làPostgreSQLWill Sau đó hiểu rằng các đối tượng của phần tỷ lệ kèo bóng đá 88 đi cùng nhau. Bạn có thể thả tất cả các đối tượng bằng mộtTiện ích tỷ lệ kèo bóng đá 88lệnh (không cần phải Duy trì riêng"Gỡ cài đặt"tập lệnh). Thậm chí hữu ích hơn,pg_dumpbiết rằng nó không nên đổ các đối tượng thành viên riêng lẻ của Tiện ích tỷ lệ kèo bóng đá 88 - Nó sẽ chỉ bao gồm mộtTạo SỰ MỞ RỘNG11197_11497
PostgreSQLSẽ không cho phép bạn thả một đối tượng riêng lẻ có trong một phần tỷ lệ kèo bóng đá 88, ngoại trừ Thả toàn bộ phần tỷ lệ kèo bóng đá 88. Ngoài ra, trong khi bạn có thể thay đổi Định nghĩa của một đối tượng thành viên tỷ lệ kèo bóng đá 88 (ví dụ: thông quaTạo hoặc thay thế chức năngcho a chức năng), hãy nhớ rằng định nghĩa sửa đổi sẽ không Bị bỏ rơi bởiPG_DUMP11920_12123
Cơ chế tỷ lệ kèo bóng đá 88 cũng có quy định cho bao bì Các tập lệnh sửa đổi điều chỉnh các định nghĩa của các đối tượng SQL chứa trong một phần tỷ lệ kèo bóng đá 88. Ví dụ: nếu phiên bản 1.1 của một tiện ích tỷ lệ kèo bóng đá 88 thêm một chức năng và thay đổi phần thân của một chức năng khác chức năng so với 1.0, tác giả tỷ lệ kèo bóng đá 88 có thể cung cấpCập nhật tập lệnhĐiều đó chỉ làm cho hai người đó thay đổi. TheCập nhật tỷ lệ kèo bóng đá 88 thay đổiLệnh sau đó có thể được sử dụng để áp dụng các thay đổi và theo dõi này phiên bản tiện ích tỷ lệ kèo bóng đá 88 thực sự được cài đặt trong một cơ sở dữ liệu.
Các loại đối tượng SQL có thể là thành viên của một phần tỷ lệ kèo bóng đá 88 là hiển thị trong mô tả củaPostgreSQL: Tài liệu:. Đáng chú ý, các đối tượng có toàn bộ cơ sở dữ liệu, chẳng hạn như cơ sở dữ liệu, vai trò và không gian bảng, không thể tỷ lệ kèo bóng đá 88 Thành viên vì một tiện ích tỷ lệ kèo bóng đá 88 chỉ được biết đến trong một cơ sở dữ liệu. (Mặc dù tập lệnh tỷ lệ kèo bóng đá 88 không bị cấm tạo như vậy các đối tượng, nếu nó làm như vậy, chúng sẽ không được theo dõi như một phần của phần tỷ lệ kèo bóng đá 88.) Cũng lưu ý rằng trong khi một bảng có thể là thành viên của Tiện ích tỷ lệ kèo bóng đá 88, các đối tượng công ty con của nó như chỉ mục không trực tiếp được coi là thành viên của phần tỷ lệ kèo bóng đá 88. Một điểm quan trọng khác là những lược đồ đó có thể thuộc về các phần tỷ lệ kèo bóng đá 88, nhưng không phải là ngược lại: một Tiện ích tỷ lệ kèo bóng đá 88 như vậy có một tên không đủ tiêu chuẩn và không tồn tại"trong"bất kỳ lược đồ nào. Phần tỷ lệ kèo bóng đá 88 Các đối tượng thành viên, tuy nhiên, sẽ thuộc về các lược đồ bất cứ khi nào thích hợp cho các loại đối tượng của họ. Nó có thể hoặc không thể thích hợp cho một phần tỷ lệ kèo bóng đá 88 để sở hữu (các) thành viên của nó các đối tượng ở bên trong.
Các tiện ích tỷ lệ kèo bóng đá 88 được phân phối rộng rãi nên giả định rất ít về cơ sở dữ liệu họ chiếm giữ. Cụ thể, trừ khi bạn phát hànhĐặt search_path = pg_temp, Giả sử mỗi người không đủ tiêu chuẩn Tên có thể giải quyết cho tỷ lệ kèo bóng đá 88 đối tượng mà người dùng độc hại đã xác định. Cảnh giác với các cấu trúc phụ thuộc vàosearch_pathngầm:invàcaseBiểu thứckhiLuôn chọn tỷ lệ kèo bóng đá 88 toán tử sử dụng đường dẫn tìm kiếm. Ở vị trí của họ, sử dụngtoán tử (lược đồ. =) BẤT KÌvàtrường hợp khiBiểu thức.
ThePostgreSQL: Tài liệu: 9.3: Tạo tiện14754_14873.controlvà phải được đặt trong cài đặtchia sẻ/tỷ lệ kèo bóng đá 88Thư mục. Phải cũng là ít nhất tỷ lệ kèo bóng đá 88SQLtập lệnh Tệp, theo mẫu đặt têntỷ lệ kèo bóng đá 88--phiên bản.sql(ví dụ,foo--1.0.sqlcho phiên bản1.0của phần tỷ lệ kèo bóng đá 88foo). Qua Mặc định, (các) tệp tập lệnh cũng được đặt trongchia sẻ/tỷ lệ kèo bóng đá 88Thư mục; Nhưng tệp điều khiển có thể chỉ định tỷ lệ kèo bóng đá 88 thư mục khác cho (các) tệp tập lệnh.
Định dạng tệp cho tệp điều khiển tiện ích tỷ lệ kèo bóng đá 88 giống như đối với ThePostgreSql.confTệp, cụ thể là danh sách củatham số_name = giá trịBài tập, tỷ lệ kèo bóng đá 88 trên mỗi dòng. Các dòng trống và nhận xét được giới thiệu bởi#được cho phép. Đảm bảo trích dẫn bất kỳ giá trị nào không phải là tỷ lệ kèo bóng đá 88 từ hoặc số.
Tệp điều khiển có thể đặt các tham số sau:
Thư mục chứa tiện ích tỷ lệ kèo bóng đá 88SQLTập tin tập lệnh. Trừ khi tỷ lệ kèo bóng đá 88 con đường tuyệt đối là đưa ra, tên liên quan đến cài đặtSharedirThư mục. Hành vi mặc định là tương đương với chỉ địnhThư mục = 'sự tỷ lệ kèo bóng đá 88'.
Phiên bản mặc định của tiện ích tỷ lệ kèo bóng đá 88 (phiên bản sẽ là được cài đặt nếu không có phiên bản nào được chỉ định trongTạo SỰ MỞ RỘNG). Mặc dù điều này có thể được bỏ qua, điều đó sẽ dẫn đếnTạo tiện ích tỷ lệ kèo bóng đá 88thất bại nếu khôngphiên bảnTùy chọn xuất hiện, vì vậy bạn thường không muốn để làm điều đó.
Một bình luận (bất kỳ chuỗi nào) về phần tỷ lệ kèo bóng đá 88. Ngoài ra, Nhận xét có thể được đặt bằng phương tiện của17139_17148Lệnh trong tệp tập lệnh.
17272_17475
Giá trị của tham số này sẽ được thay thế cho mỗi Sự xuất hiện củamodule_pathnameTrong Tệp tập lệnh. Nếu nó không được thiết lập, không có sự thay thế nào được thực hiện. Thông thường, điều này được đặt thành$ libdir/shared_l Library_namevà sau đómodule_pathnameđược sử dụng trongTạo chức nănglệnh cho các chức năng ngôn ngữ C, để các tệp tập lệnh không cần phải kết nối tên của Thư viện được chia sẻ.
Một danh sách tên của các tiện ích tỷ lệ kèo bóng đá 88 mà phần tỷ lệ kèo bóng đá 88 này phụ thuộc vào, Ví dụYêu cầu = 'Foo, Bar'. Những thứ kia các tiện ích tỷ lệ kèo bóng đá 88 phải được cài đặt trước khi có thể cài đặt cái này.
Nếu tham số này làĐúng(đó là mặc định), chỉ các siêu người dùng mới có thể tạo tiện ích tỷ lệ kèo bóng đá 88 hoặc cập nhật nó thành một phiên bản mới. Nếu nó được đặt thànhSai, chỉ các đặc quyền cần thiết để thực thi các lệnh trong cài đặt hoặc tập lệnh cập nhật là bắt buộc.
Một tiện ích tỷ lệ kèo bóng đá 88 làRelocatableNếu có có thể di chuyển các đối tượng chứa của nó vào một lược đồ khác Sau khi tạo ban đầu của phần tỷ lệ kèo bóng đá 88. Mặc định làSai, tức là tiện ích tỷ lệ kèo bóng đá 88 không thể di chuyển lại. Nhìn thấy bên dưới để biết thêm thông tin.
Tham số này chỉ có thể được đặt cho các tiện ích tỷ lệ kèo bóng đá 88 không thể phân phối. Nó buộc phần tỷ lệ kèo bóng đá 88 phải được tải vào chính xác lược đồ được đặt tên Và không phải bất kỳ khác. Xem bên dưới để biết thêm thông tin.
Ngoài tệp điều khiển chínhtỷ lệ kèo bóng đá 88.control,, Một tiện ích tỷ lệ kèo bóng đá 88 có thể có các tệp điều khiển thứ cấp có tên trong kiểutỷ lệ kèo bóng đá 88--phiên bản.control. Nếu được cung cấp, những thứ này phải được đặt trong thư mục tập tin tập lệnh. Tệp điều khiển thứ cấp Thực hiện theo định dạng giống như tệp điều khiển chính. Bất kỳ tham số Đặt trong tệp điều khiển thứ cấp ghi đè tệp điều khiển chính Khi cài đặt hoặc cập nhật phiên bản tỷ lệ kèo bóng đá 88 đó. Tuy nhiên, các tham sốThư mụcvàDefault_versionkhông thể được đặt trong A Tệp điều khiển thứ cấp.
Một tiện ích tỷ lệ kèo bóng đá 88SQLtập lệnh Các tệp có thể chứa bất kỳ lệnh SQL nào, ngoại trừ kiểm soát giao dịch lệnh (Bắt đầu, cam kết, v.v.) và các lệnh không thể được thực thi Bên trong tỷ lệ kèo bóng đá 88 khối giao dịch (chẳng hạn nhưNút hút). Điều này là do các tệp tập lệnh là được thực hiện ngầm trong tỷ lệ kèo bóng đá 88 khối giao dịch.
Một tiện ích tỷ lệ kèo bóng đá 88SQLtập lệnh Các tệp cũng có thể chứa các dòng bắt đầu bằng\ echo, sẽ bị bỏ qua (được coi là bình luận) bởi cơ chế tỷ lệ kèo bóng đá 88. Điều khoản này thường được sử dụng để Ném lỗi nếu tệp tập lệnh được đưa vàoPSQLthay vì được tải quaTạo tiện ích tỷ lệ kèo bóng đá 88(Xem ví dụ tập lệnh bên dưới). Không có rằng, người dùng có thể vô tình tải nội dung của tiện ích tỷ lệ kèo bóng đá 88 là"Loose"21125_21221
Trong khi các tệp tập lệnh có thể chứa bất kỳ ký tự nào được phép bởi Mã hóa được chỉ định, các tệp điều khiển chỉ chứa ASCII đơn giản, Bởi vì không có cách nào choPostgreSQLĐể biết mã hóa điều khiển nào Tệp đang ở. Trong thực tế, đây chỉ là một vấn đề nếu bạn muốn sử dụng Các ký tự không phải ASCII trong nhận xét của tiện ích tỷ lệ kèo bóng đá 88. Khuyến khích Thực hành trong trường hợp đó là không sử dụng tệp điều khiểnbình luậntham số, nhưng thay vào đó sử dụngNhận xét về tiện ích tỷ lệ kèo bóng đá 88Trong tệp tập lệnh để đặt bình luận.
Người dùng thường muốn tải các đối tượng có trong một tiện ích tỷ lệ kèo bóng đá 88 thành một lược đồ khác với tác giả của phần tỷ lệ kèo bóng đá 88 có trong tâm trí. Có ba cấp độ được hỗ trợ của khả năng chuyển hóa:
22117_22262Lược đồ bộ tỷ lệ kèo bóng đá 88 thay đổilệnh, tự động đổi tên tất cả các đối tượng thành viên thành lược đồ mới. Thông thường, điều này chỉ có thể nếu phần tỷ lệ kèo bóng đá 88 Không chứa các giả định nội bộ về bất kỳ lược đồ nào của nó Các đối tượng đang ở. Ngoài ra, tất cả các đối tượng của tiện ích tỷ lệ kèo bóng đá 88 phải có trong một lược đồ để bắt đầu bằng (bỏ qua các đối tượng không thuộc về bất kỳ Lược đồ, chẳng hạn như ngôn ngữ thủ tục). Đánh dấu một sự tái định cư hoàn toàn Tiện ích tỷ lệ kèo bóng đá 88 bằng cách cài đặtRelocatable = truein Tệp điều khiển của nó.
Một tiện ích tỷ lệ kèo bóng đá 88 có thể được chuyển vị trong quá trình cài đặt nhưng không sau đó. Đây thường là trường hợp nếu tập lệnh của tiện ích tỷ lệ kèo bóng đá 88 Tệp cần tham khảo lược đồ đích một cách rõ ràng, ví dụ Trong cài đặtsearch_pathThuộc tính cho SQL chức năng. Đối với một tiện ích tỷ lệ kèo bóng đá 88 như vậy, đặtRelocatable = falseTrong tệp điều khiển của nó và sử dụng@extschema@23211_23423lược đồTùy chọnTạo SỰ MỞ RỘNG.
Nếu tiện ích tỷ lệ kèo bóng đá 88 hoàn toàn không hỗ trợ di dời, SETRelocatable = falseTrong tệp điều khiển của nó, và cũng đặtSchemavới tên của Lược đồ mục tiêu dự định. Điều này sẽ ngăn chặn việc sử dụnglược đồTùy chọn củaTạo SỰ MỞ RỘNG, trừ khi nó chỉ định cùng một lược đồ có tên trong Tệp điều khiển. Lựa chọn này thường là cần thiết nếu phần tỷ lệ kèo bóng đá 88 chứa các giả định nội bộ về tên lược đồ không thể được thay thế bằng cách sử dụng@extschema@. The@extschema@Cơ chế thay thế là cũng có sẵn trong trường hợp này, mặc dù nó được sử dụng hạn chế kể từ khi Tên lược đồ được xác định bởi tệp điều khiển.
Trong mọi trường hợp, tệp tập lệnh sẽ được thực thi bằngsearch_pathBan đầu được đặt để trỏ đến lược đồ đích; đó là,Tạo tiện ích tỷ lệ kèo bóng đá 88Có tương đương với điều này không:
Đặt Local Search_path thành @extschema @;
Điều này cho phép tỷ lệ kèo bóng đá 88 được tạo bởi tệp tập lệnh đi vào lược đồ mục tiêu. Tệp tập lệnh có thể thay đổisearch_pathNếu nó muốn, nhưng nói chung là không mong muốn.search_pathđược khôi phục thành Cài đặt trước của nó sau khi hoàn thànhTạo SỰ MỞ RỘNG.
lược đồ đích được xác định bởilược đồtham số trong tệp điều khiển nếu đó là đưa ra, nếu không thì bởilược đồTùy chọnTạo tiện ích tỷ lệ kèo bóng đá 88Nếu điều đó được đưa ra, nếu không thì lược đồ tạo đối tượng mặc định hiện tại (cái đầu tiên trong người gọisearch_path). Khi Tệp điều khiểnSchematham số được sử dụng, lược đồ mục tiêu sẽ được tạo nếu nó chưa tồn tại, nhưng trong hai trường hợp khác nó phải tồn tại.
Nếu có bất kỳ tiện ích tỷ lệ kèo bóng đá 88 tiên quyết nào được liệt kê trongYêu cầuTrong tệp điều khiển, các lược đồ mục tiêu của họ được gắn vào cài đặt ban đầu củasearch_path. Điều này cho phép hiển thị đối tượng của họ đến tệp tập lệnh của tiện ích tỷ lệ kèo bóng đá 88 mới.
Mặc dù tiện ích tỷ lệ kèo bóng đá 88 không thể phân phối có thể chứa các đối tượng lan truyền trên nhiều lược đồ, thường là mong muốn đặt tất cả các đối tượng có nghĩa là để sử dụng bên ngoài vào một lược đồ duy nhất, đó là được coi là lược đồ mục tiêu của tiện ích tỷ lệ kèo bóng đá 88. Một sự sắp xếp như vậy hoạt động thuận tiện với cài đặt mặc định củasearch_pathTrong quá trình tạo ra sự phụ thuộc phần tỷ lệ kèo bóng đá 88.
Một số tiện ích tỷ lệ kèo bóng đá 88 bao gồm các bảng cấu hình, có chứa dữ liệu điều đó có thể được người dùng thêm hoặc thay đổi sau khi cài đặt các phần tỷ lệ kèo bóng đá 88. Thông thường, nếu một bảng là một phần của phần tỷ lệ kèo bóng đá 88, Cả định nghĩa của bảng và nội dung của nó sẽ không bị bỏ rơi bởipg_dump. Nhưng hành vi đó là không mong muốn cho một bảng cấu hình; Bất kỳ thay đổi dữ liệu nào được thực hiện bởi Người dùng cần được bao gồm trong các bãi rác hoặc tiện ích tỷ lệ kèo bóng đá 88 sẽ hoạt động khác nhau sau khi kết xuất và tải lại.
Để giải quyết vấn đề này, tệp tập lệnh của tiện ích tỷ lệ kèo bóng đá 88 có thể đánh dấu A
bảng nó đã tạo dưới dạng bảng cấu hình, sẽ gây rapg_dumpĐể bao gồm cả bảng
Nội dung (không phải định nghĩa của nó) trong bãi rác. Để làm điều đó, hãy gọi
chức năngpg_extension_config_dump (RegClass,
chữ)
Sau khi tạo bảng, ví dụ
Tạo bảng my_config (văn bản chính, văn bản giá trị); Chọn pg_catalog.pg_extension_config_dump ('my_config', '');
Bất kỳ số lượng bảng nào cũng có thể được đánh dấu theo cách này.
Khi đối số thứ hai củapg_extension_config_dump
là tỷ lệ kèo bóng đá 88 chuỗi trống,
Toàn bộ nội dung của bảng được đổ bởipg_dump. Điều này thường chỉ đúng nếu
Bảng ban đầu trống rỗng như được tạo bởi tập lệnh tỷ lệ kèo bóng đá 88. Nếu như
Có một hỗn hợp dữ liệu ban đầu và dữ liệu do người dùng cung cấp trong
bảng, đối số thứ hai củapg_extension_config_dump
cung cấp AWHEREĐiều kiện chọn dữ liệu sẽ được bỏ.
Ví dụ: bạn có thể làm
Tạo bảng my_config (văn bản chính, văn bản giá trị, standard_entry boolean); Chọn pg_catalog.pg_extension_config_dump ('my_config', 'trong đó không tiêu chuẩn_entry');
và sau đó đảm bảo rằngStandard_entrychỉ đúng trong các hàng được tạo bởi tập lệnh của tiện ích tỷ lệ kèo bóng đá 88.
Các tình huống phức tạp hơn, chẳng hạn như các hàng được cung cấp ban đầu điều đó có thể được sửa đổi bởi người dùng, có thể được xử lý bằng cách tạo kích hoạt trên bảng cấu hình để đảm bảo rằng các hàng được sửa đổi được đánh dấu chính xác.
Bạn có thể thay đổi điều kiện bộ lọc được liên kết với A
Bảng cấu hình bằng cách gọipg_extension_config_dump
Một lần nữa. (Điều này sẽ
thường hữu ích trong tập lệnh cập nhật tiện ích tỷ lệ kèo bóng đá 88.) Cách duy nhất để
Đánh dấu một bảng vì không còn bảng cấu hình để phân tách nó
Từ phần tỷ lệ kèo bóng đá 88 vớitỷ lệ kèo bóng đá 88 thay đổi ...
Bàn thả.
Lưu ý rằng mối quan hệ khóa nước ngoài giữa các bảng này sẽ ra lệnh cho thứ tự trong đó các bảng được bỏ qua bởi pg_dump. Cụ thể, PG_DUMP sẽ cố gắng bỏ bảng được tham chiếu trước bảng tham chiếu. Như các mối quan hệ quan trọng nước ngoài là thiết lập tại Tạo thời gian tỷ lệ kèo bóng đá 88 (trước khi dữ liệu được tải vào các bảng) phụ thuộc tròn không được hỗ trợ. Khi hình tròn Sự phụ thuộc tồn tại, dữ liệu vẫn sẽ được bỏ ra nhưng bãi rác sẽ không thể được khôi phục trực tiếp và sự can thiệp của người dùng sẽ được yêu cầu.
Một lợi thế của cơ chế tỷ lệ kèo bóng đá 88 là nó cung cấp các cách thuận tiện để quản lý các bản cập nhật cho các lệnh SQL xác định các đối tượng của một tiện ích tỷ lệ kèo bóng đá 88. Điều này được thực hiện bằng cách liên kết một tên phiên bản hoặc số với mỗi phiên bản được phát hành của tiện ích tỷ lệ kèo bóng đá 88 tập lệnh cài đặt. Ngoài ra, nếu bạn muốn người dùng có thể Cập nhật cơ sở dữ liệu của họ một cách linh hoạt từ phiên bản này sang phiên bản tiếp theo, Bạn nên cung cấpCập nhật tập lệnhĐiều đó Thực hiện các thay đổi cần thiết để đi từ phiên bản này sang phiên bản tiếp theo. Cập nhật tập lệnh có tên theo mẫutỷ lệ kèo bóng đá 88--OldVersion--NewVersion.sql(ví dụ:foo--1.0--1.1.sqlChứa các lệnh để sửa đổi phiên bản1.0của phần tỷ lệ kèo bóng đá 88foothành phiên bản1.1).
Cho rằng có sẵn tập lệnh cập nhật phù hợp, lệnhCập nhật tỷ lệ kèo bóng đá 88 thay đổiSẽ cập nhật một cài đặt tiện ích tỷ lệ kèo bóng đá 88 cho phiên bản mới được chỉ định. Tập lệnh cập nhật được chạy trong cùng một môi trườngTạo SỰ MỞ RỘNGCung cấp các tập lệnh cài đặt: Đặc biệt,search_pathđược thiết lập theo cùng một cách và Bất kỳ đối tượng mới nào được tạo bởi tập lệnh đều được tự động thêm vào phần tỷ lệ kèo bóng đá 88.
Nếu tiện ích tỷ lệ kèo bóng đá 88 có các tệp điều khiển thứ cấp, điều khiển Các tham số được sử dụng cho tập lệnh cập nhật là các tham số được liên kết với phiên bản mục tiêu (mới) của tập lệnh.
Cơ chế cập nhật có thể được sử dụng để giải quyết tỷ lệ kèo bóng đá 88 đặc biệt quan trọng trường hợp: chuyển đổi tỷ lệ kèo bóng đá 88"Loose"Bộ sưu tập của Đối tượng vào một phần tỷ lệ kèo bóng đá 88. Trước khi cơ chế tỷ lệ kèo bóng đá 88 được thêm ĐẾNPostgreSQL31359_31613Tạo tiện ích tỷ lệ kèo bóng đá 88là một cách, nhưng nó không mong muốn Nếu các đối tượng có sự phụ thuộc (ví dụ, nếu có bảng Các cột của một kiểu dữ liệu được tạo bởi tiện ích tỷ lệ kèo bóng đá 88). Cách khắc phục Tình huống này là tạo một phần tỷ lệ kèo bóng đá 88 trống, sau đó sử dụngtiện ích tỷ lệ kèo bóng đá 88 thay đổiĐể đính kèm mỗi lần tồn tại trước phản đối phần tỷ lệ kèo bóng đá 88, sau đó cuối cùng tạo bất kỳ đối tượng mới nào nằm trong phiên bản tỷ lệ kèo bóng đá 88 hiện tại nhưng không ở trong bản chưa đóng gói giải phóng.Tạo tiện ích tỷ lệ kèo bóng đá 88Hỗ trợ này trường hợp của nótừ Old_VersionTùy chọn, điều này khiến nó không chạy tập lệnh cài đặt bình thường cho phiên bản đích, nhưng Thay vào đó, tập lệnh cập nhật có têntỷ lệ kèo bóng đá 88--Old_Version--Target_Version.sql. Sự lựa chọn của Tên phiên bản giả để sử dụng làOld_VersionTùy thuộc vào tác giả tỷ lệ kèo bóng đá 88, mặc dùGiải nénlà một quy ước chung. Nếu bạn có nhiều phiên bản trước, bạn cần có khả năng cập nhật Theo kiểu tỷ lệ kèo bóng đá 88, sử dụng nhiều tên phiên bản giả để xác định họ.
tỷ lệ kèo bóng đá 88 thay đổiCó thể thực thi Trình tự các tệp tập lệnh cập nhật để đạt được bản cập nhật được yêu cầu. Vì Ví dụ, nếu chỉfoo--1.0--1.1.sqlvàfoo--1.1--2.0.sqlcó sẵn,tỷ lệ kèo bóng đá 88 thay đổisẽ áp dụng chúng vào Chuỗi nếu bản cập nhật lên phiên bản2.0IS được yêu cầu khi1.0hiện tại đã cài đặt.
PostgreSQLkhông giả định Bất cứ điều gì về các thuộc tính của tên phiên bản: ví dụ, nó không biết liệu1.1theo sau1.0. Nó chỉ phù hợp với khả năng tên phiên bản và đi theo đường dẫn yêu cầu áp dụng ít tập lệnh cập nhật nhất. (tỷ lệ kèo bóng đá 88 tên phiên bản thực sự có thể là bất kỳ chuỗi nào không chứa--hoặc dẫn đầu hoặc Trailing-.)
Đôi khi rất hữu ích khi cung cấp"hạ cấp"SCRIPTS, ví dụ33916_33935Để cho phép hoàn nguyên các thay đổi được liên kết với phiên bản1.134022_34196"Nhanh chóng con đường"Cập nhật tập lệnh nhảy trước nhiều phiên bản cũng như tỷ lệ kèo bóng đá 88 tập lệnh hạ cấp xuống điểm bắt đầu của đường dẫn nhanh. Nó có thể thực hiện ít bước hơn để áp dụng hạ cấp và sau đó là đường dẫn nhanh hơn so với Để di chuyển về phía trước tỷ lệ kèo bóng đá 88 phiên bản tại tỷ lệ kèo bóng đá 88 thời điểm. Nếu tập lệnh hạ cấp giảm Bất kỳ đối tượng không thể thay thế nào, điều này sẽ mang lại kết quả không mong muốn.
Để kiểm tra các đường dẫn cập nhật không mong muốn, hãy sử dụng lệnh này:
Chọn * từ pg_extension_update_paths ('extension_name');
Điều này hiển thị mỗi cặp tên phiên bản đã biết riêng biệt cho Tiện ích tỷ lệ kèo bóng đá 88 được chỉ định, cùng với chuỗi đường dẫn cập nhật sẽ được thực hiện để đi từ phiên bản nguồn đến mục tiêu Phiên bản hoặcnullNếu không có sẵn Đường dẫn cập nhật. Đường dẫn được hiển thị ở dạng văn bản với--Dấu tách. Bạn có thể sử dụngregexp_split_to_array (đường dẫn, '-')Nếu bạn thích Định dạng mảng.
35317_35352SQL-Anly Mexty, tỷ lệ kèo bóng đá 88 tổng hợp hai yếu tố Loại có thể lưu trữ bất kỳ loại giá trị nào trong các khe của nó, được đặt tên là"K"và"V"35563_35629
Tệp tập lệnhcặp-1.0.sqlTrông Như thế này:
35740_36540
Tệp điều khiểnPair.ControlTrông Như thế này:
# Phần tỷ lệ kèo bóng đá 88 cặp Nhận xét = 'Kiểu dữ liệu cặp khóa/giá trị' default_version = '1.0' có thể di dời = false
Trong khi bạn hầu như không cần tỷ lệ kèo bóng đá 88 makefile để cài đặt hai tệp này vào thư mục chính xác, bạn có thể sử dụngMakefileChứa này:
Phần tỷ lệ kèo bóng đá 88 = cặp Dữ liệu = cặp-- 1.0.sql Pg_config = pg_config Pgxs: = $ (shell $ (pg_config) -pgxs) Bao gồm $ (PGXS)
Makefile này dựa trênPGXS,, được mô tả trongPhần 35.16. LệnhTạo cài đặtSẽ cài đặt Kiểm soát và tập lệnh vào thư mục chính xác như được báo cáo bởiPG_CONFIG.
Sau khi cài đặt các tệp, hãy sử dụngTạo tiện ích tỷ lệ kèo bóng đá 88lệnh để tải tỷ lệ kèo bóng đá 88 vào bất kỳ cơ sở dữ liệu cụ thể nào.