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
Tài liệu này dành cho phiên bản không được hỗ trợ của kèo bóng đá hom nay.
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ế.

F.46. xml2

TheXML2Mô -đun cung cấp chức năng truy vấn XPath và XSLT.

F.46.1. Thông báo từ chối

từkèo bóng đá hom nay10136_10697để có thể giải quyết sự thiếu hụt.

F.46.2. Mô tả về kèo bóng đá hom nay chức năng

kèo bóng đá hom nay F.35Hiển thị kèo bóng đá hom nay chức năng được cung cấp bởi mô -đun này. kèo bóng đá hom nay chức năng này cung cấp kèo bóng đá hom nay truy vấn XML và Xpath đơn giản. Tất cả kèo bóng đá hom nay đối số thuộc loạiText, Vì vậy, vì sự ngắn gọn không được hiển thị.

kèo bóng đá hom nay F.35. Chức năng

function return Mô tả
xml_valid (kèo bóng đá hom nay) bool

11822_11985xml_is_well_formed (). Tênxml_valid ()về mặt kỹ thuật không chính xác vì tính hợp lệ và độ được hình thành có ý nghĩa khác nhau trong XML.)

XPath_String (kèo bóng đá hom nay, truy vấn) Text

Các chức năng này đánh giá truy vấn XPath trên kèo bóng đá hom nay được cung cấp và chuyển kết quả cho loại được chỉ định.

xpath_number (kèo bóng đá hom nay, truy vấn) float4
xpath_bool (kèo bóng đá hom nay, truy vấn) bool
xpath_nodeset (kèo bóng đá hom nay, truy vấn, toptag, itemTag) Text

Điều này đánh giá truy vấn trên kèo bóng đá hom nay và gói kết quả trong các thẻ XML. Nếu kết quả là đa trị, đầu ra sẽ trông giống như:

12985_13130

NếuTopTaghoặcitemTaglà một chuỗi trống, thẻ có liên quan bị bỏ qua.

xpath_nodeset (kèo bóng đá hom nay, truy vấn) Text

nhưxpath_nodeset (kèo bóng đá hom nay, truy vấn, toptag, itemTag)Nhưng kết quả bỏ qua cả hai thẻ.

xpath_nodeset (kèo bóng đá hom nay, truy vấn, itemTag) Text

nhưxpath_nodeset (kèo bóng đá hom nay, truy vấn, toptag, itemTag)Nhưng kết quả bỏ quaTopTag.

xpath_list (kèo bóng đá hom nay, truy vấn, phân tách) Text

13955_14045Giá trị 1, Giá trị 2, Giá trị 3Nếu dấu tách là,.

xpath_list (kèo bóng đá hom nay, truy vấn) Text Đây là một trình bao bọc cho chức năng trên sử dụng,làm dấu phân cách.

F.46.3.XPath_Table

14720_14822

xpath_tablelà một hàm bảng đánh giá một tập hợp các truy vấn XPath trên mỗi bộ kèo bóng đá hom nay và trả về kết quả dưới dạng bảng. Trường khóa chính từ bảng kèo bóng đá hom nay gốc được trả về làm cột đầu tiên của kết quả để tập kết quả có thể dễ dàng được sử dụng trong các kết nối. Các tham số được mô tả trongkèo bóng đá hom nay F.36.

kèo bóng đá hom nay F.36.xpath_tabletham số

tham số Mô tả
Key

Tên củaKeyxôngTrường - Đây chỉ là một trường được sử dụng làm cột đầu tiên của kèo bóng đá hom nay đầu ra, tức là, nó xác định bản ghi mà mỗi hàng đầu ra xuất hiện (xem ghi chú bên dưới về nhiều giá trị)

Document

Tên của trường chứa kèo bóng đá hom nay XML

Mối quan hệ

Tên của bảng hoặc xem có chứa kèo bóng đá hom nay

XPaths

Một hoặc nhiều biểu thức XPath, được phân tách bởi|

Tiêu chí

Nội dung của mệnh đề WHERE. Điều này không thể được bỏ qua, vì vậy hãy sử dụngTRUEhoặc1 = 1Nếu bạn muốn xử lý tất cả kèo bóng đá hom nay hàng trong quan hệ


16812_16961

16989_17072

Vì vậy, kèo bóng đá hom nay tham số đó có thể làbất cứ điều gìhợp lệ ở các vị trí cụ thể đó. Kết quả từ lựa chọn này cần trả về chính xác hai cột (nó sẽ trừ khi bạn cố gắng liệt kê nhiều trường cho khóa hoặc kèo bóng đá hom nay). Coi chừng rằng cách tiếp cận đơn giản này đòi hỏi bạn phải xác nhận bất kỳ giá trị do người dùng nào cung cấp để tránh các cuộc tấn công tiêm SQL.

Hàm phải được sử dụng trong AtừBiểu thức, vớiASmệnh đề để chỉ định kèo bóng đá hom nay cột đầu ra; Ví dụ

Chọn * Từ
xpath_table ('article_id',
            'Bài báo_xml',
            'Bài báo',
            '/Bài báo/Tác giả |/Bài báo/Trang |/Bài báo/Tiêu đề',
            'Date_Endered' '2003-01-01' '')
Như t (intent_id integer, văn bản tác giả, số nguyên trang_count, văn bản tiêu đề);

TheASmệnh đề xác định tên và loại của kèo bóng đá hom nay cột trong bảng đầu ra. Đầu tiên làKeyHàng18130_18357

18363_18402page_countCột kết quả như một số nguyên. Hàm xử lý nội bộ với các biểu diễn chuỗi, vì vậy khi bạn nói rằng bạn muốn một số nguyên trong đầu ra, nó sẽ lấy biểu diễn chuỗi của kết quả XPath và sử dụng các hàm đầu vào kèo bóng đá hom nay để biến nó thành một số nguyên (hoặc bất kỳ loại nàoASYêu cầu mệnh đề). Một lỗi sẽ dẫn đến nếu nó không thể làm điều này - ví dụ: nếu kết quả trống - vì vậy bạn có thể muốn chỉ bám vàoTextlà loại cột nếu bạn nghĩ rằng dữ kèo bóng đá hom nay của bạn có bất kỳ vấn đề nào.

Cuộc gọiChọnCâu lệnh không nhất thiết phải chỉ làChọn *- Nó có thể tham chiếu kèo bóng đá hom nay cột đầu ra theo tên hoặc tham gia với kèo bóng đá hom nay bảng khác. Hàm tạo ra một bảng ảo mà bạn có thể thực hiện bất kỳ hoạt động nào bạn muốn (ví dụ: tập hợp, nối, sắp xếp, v.v.). Vì vậy, chúng tôi cũng có thể có:

Chọn T.Title, P.Fullname, P.Email
Từ xpath_table ('artical_id', 'article_xml', 'bài viết',
                 '/Bài báo/Tiêu đề |/Bài báo/Tác giả/@ID',
                 'XPath_String (article_xml,' '/article/@date' ')' '2003-03-20' ''))
       Như t (intent_id integer, văn bản tiêu đề, số nguyên Author_id),
     tblpeopleinfo như p
WHERE T.Author_id = p.person_id;

như một ví dụ phức tạp hơn. Tất nhiên, bạn có thể bọc tất cả những điều này trong một quan điểm để thuận tiện.

F.46.3.1. Kết quả đa trị

Thexpath_table20053_20442

20448_20824

Tạo thử nghiệm bảng (
    ID int khóa chính,
    Văn bản XML
);

Chèn vào kèo bóng đá hom nay giá trị kiểm tra (1, '<doc num = "c1"
<line num = "l1" <a 1 </a <b 2 </b <c 3 </c </line
<line num = "l2" <a 11 </a <b 22 </b <c 33 </c </line
</doc ');

Chèn vào kèo bóng đá hom nay giá trị kiểm tra (2, '<doc num = "c2"
<line num = "l1" <a 111 </a <b 222 </b <c 333 </c </line
<line num = "l2" <a 111 </a <b 222 </b <c 333 </c </line
</doc ');

Chọn * Từ
  xpath_table ('id', 'xml', 'test',
              '/doc/@num |/doc/line/@num |/doc/line/a |/doc/line/b |/doc/line/c',
              'ĐÚNG VẬY')
  Như T (ID int, doc_num varchar (10), line_num varchar (10), val1 int, val2 int, val3 int)
WHERE ID = 1 Đặt hàng của doc_num, line_num

 ID | doc_num | line_num | val1 | val2 | val3
----+----------+----------+------+------+------
  1 | C1 | L1 |    1 |    2 |    3
  1 |         | L2 |   11 |   22 |   33

để nhậndoc_numTrên mỗi dòng, giải pháp là sử dụng hai lời mời củaXPath_Tablevà tham gia kết quả:

Chọn t.*, I.doc_num từ
  xpath_table ('id', 'xml', 'test',
              '/doc/line/@num |/doc/line/a |/doc/line/b |/doc/line/c',
              'ĐÚNG VẬY')
    Như t (id int, line_num varchar (10), val1 int, val2 int, val3 int),
  xpath_table ('id', 'xml', 'test', '/doc/@num', 'true'))
    Như tôi (ID int, doc_num varchar (10))
WHERE I.ID = T.ID và I.ID = 1
Đặt hàng bởi doc_num, line_num;

 ID | line_num | val1 | val2 | val3 | doc_num
----+----------+------+------+------+---------
  1 | L1 |    1 |    2 |    3 | C1
  1 | L2 |   11 |   22 |   33 | C1
(2 hàng)

F.46.4. Chức năng XSLT

kèo bóng đá hom nay chức năng sau có sẵn nếu LibXSLT được cài đặt:

F.46.4.1.XSLT_Process

23181_23256

Hàm này áp dụng bảng kiểu XSL cho kèo bóng đá hom nay và trả về kết quả được chuyển đổi. Theparamlist​​là danh sách kèo bóng đá hom nay bài tập tham số sẽ được sử dụng trong chuyển đổi, được chỉ định trong biểu mẫua = 1, b = 2. Lưu ý rằng phân tích phân tích tham số rất đơn giản: Giá trị tham số không thể chứa dấu phẩy!

Ngoài ra còn có phiên bản hai tham số củaXSLT_Processkhông chuyển bất kỳ tham số nào cho phép biến đổi.

F.46.5. Tác giả

John Grey

Phát triển mô -đun này được tài trợ bởi Torchbox Ltd. (www.torchbox.com). Nó có cùng giấy phép BSD như kèo bóng đá hom nay.