Các sửa đổi quan trọng đối với các thông số kỹ thuật liên quan đến 윈 토토 trong ISO/IEC 9075-14 (SQL/윈 토토) đã được giới thiệu với SQL: 2006.POSTGRESQLS Thực hiện kiểu dữ liệu 윈 토토 và các chức năng liên quan phần lớn theo phiên bản 2003 trước đó, với một số mượn từ các phiên bản sau. Đặc biệt:
Trong đó tiêu chuẩn hiện tại cung cấp một họ các loại dữ liệu 윈 토토 để giữHồitài liệuxônghoặcHồiNội dungHồi9245_9300윈 토토 (chuỗi)
Để giữ các phần nội dung 윈 토토 tùy ý,PostgreSQLCung cấp đơn윈 토토
Loại, có thể giữDocumentxônghoặcHồiNội dung”. Không có tương đương với tiêu chuẩnchuỗiHồiloại.
PostgreSQLcung cấp hai hàm được giới thiệu trong SQL: 2006, nhưng trong các biến thể sử dụng ngôn ngữ XPath 1.0, thay vì truy vấn 윈 토토 như được chỉ định cho chúng trong tiêu chuẩn.
Phần này trình bày một số khác biệt kết quả mà bạn có thể gặp phải.
ThePostgreSQL-Specific Chức năngxpath ()
vàxpath_exists ()
Tài liệu truy vấn 윈 토토 bằng ngôn ngữ XPath.PostgreSQLCũng cung cấp các biến thể chỉ dành cho XPath của các hàm tiêu chuẩn윈 토토exist
và윈 토토table
, chính thức sử dụng ngôn ngữ XQuery. Đối với tất cả các chức năng này,PostgreSQLdựa vàolib윈 토토2Thư viện chỉ cung cấp XPath 1.0.
Có một kết nối mạnh mẽ giữa ngôn ngữ XQuery và các phiên bản XPath 2.0 trở lên: Bất kỳ biểu thức nào có giá trị về mặt cú pháp và thực hiện thành công trong cả hai tạo ra kết quả tương tự (với một ngoại lệ nhỏ cho các biểu thức chứa các tham chiếu ký tự hoặc thực thể được xác định trước. Nhưng không có kết nối như vậy giữa các ngôn ngữ này và XPath 1.0; Đó là một ngôn ngữ sớm hơn và khác nhau ở nhiều khía cạnh.
11490_11708PostgreSQL-Specific Chức năng.
Các tính năng của XQuery ngoài các tính năng của XPath bao gồm:
Các biểu thức XQuery có thể xây dựng và trả về các nút 윈 토토 mới, ngoài tất cả các giá trị XPath có thể. XPath có thể tạo và trả về các giá trị của các loại nguyên tử (số, chuỗi, v.v.) nhưng chỉ có thể trả về các nút 윈 토토 đã có trong các tài liệu được cung cấp làm đầu vào cho biểu thức.
XQuery có các cấu trúc điều khiển để lặp, sắp xếp và nhóm.
XQuery cho phép khai báo và sử dụng các chức năng cục bộ.
Các phiên bản XPath gần đây bắt đầu cung cấp các khả năng chồng chéo với các phiên bản này (chẳng hạn như kiểu chức năngfor-ava
vàSắp xếp
, Chức năng ẩn danh vàparse-윈 토토
Để tạo một nút từ chuỗi), nhưng các tính năng như vậy không có sẵn trước XPath 3.0.
Đối với các nhà phát triển quen thuộc với XQuery và XPath 2.0 trở lên, XPath 1.0 trình bày một số khác biệt để tranh cãi với:
Loại cơ bản của biểu thức XQuery/XPath,chuỗi
, có thể chứa các nút 윈 토토, giá trị nguyên tử hoặc cả hai, không tồn tại trong XPath 1.0. Biểu thức 1.0 chỉ có thể tạo ra một bộ nút (chứa các nút 윈 토토 hoặc nhiều hơn) hoặc một giá trị nguyên tử duy nhất.
Không giống như trình tự XQuery/XPath, có thể chứa bất kỳ mục mong muốn nào theo bất kỳ thứ tự mong muốn nào, SPATH 1.0-SET không có thứ tự được đảm bảo và, giống như bất kỳ bộ nào, không cho phép nhiều lần xuất hiện cùng một mục.
Thelib윈 토토2Thư viện dường như luôn trả lại các bộ nút thànhPostgreSQLVới các thành viên của họ theo cùng một thứ tự tương đối họ có trong tài liệu đầu vào. Tài liệu của nó không cam kết với hành vi này và biểu thức XPath 1.0 không thể kiểm soát nó.
Trong khi XQuery/XPath cung cấp tất cả các loại được xác định trong lược đồ 윈 토토 và nhiều toán tử và chức năng trên các loại đó, XPath 1.0 chỉ có bộ nút và ba loại nguyên tửBoolean
, Double
vàchuỗi
.
XPath 1.0 không có toán tử có điều kiện. Biểu thức xquery/xpath nhưif (mũ) thì mũ/@kích thước khác "Không mũ"
không có XPath 1.0 tương đương.
XPath 1.0 không có toán tử so sánh đặt hàng cho chuỗi. Cả hai"Cat" <"Dog"
và"Cat" "Dog"
là sai, bởi vì mỗi cái là một so sánh số của haiNAN
s. Ngược lại,=
và! =
Làm so sánh các chuỗi là chuỗi.
XPath 1.0 làm mờ sự khác biệt giữaso sánh giá trịvàSo sánh chungnhư xquery/xpath xác định chúng. Cả haiSALE/@HATSIZE = 7
vàSALE/@client = "Alice"
là các so sánh được định lượng tồn tại, đúng nếu cóSALE
Với giá trị đã cho cho thuộc tính, nhưngSALE/@Taxable = false ()
là so sánh giá trị vớiGiá trị Boolean hiệu quảcủa toàn bộ bộ nút. Nó chỉ đúng nếu khôngSALE
có Achịu thuế
thuộc tính ở tất cả.
Trong mô hình dữ liệu XQuery/XPath, ANút tài liệucó thể có biểu mẫu tài liệu (nghĩa là, chính xác là một yếu tố cấp cao nhất, chỉ có nhận xét và hướng dẫn xử lý bên ngoài nó) hoặc biểu mẫu nội dung (với các ràng buộc đó được nới lỏng). Nó tương đương trong XPath 1.0,Nút gốc, chỉ có thể ở dạng tài liệu. Đây là một phần lý do윈 토토
Giá trị được truyền dưới dạng mục ngữ cảnh cho bất kỳPostgreSQLHàm dựa trên XPath phải ở dạng tài liệu.
Sự khác biệt được tô sáng ở đây không phải là tất cả. Trong XQuery và các phiên bản 2.0 trở lên của XPath, có chế độ tương thích XPath 1.0 và danh sách W3C củaThay đổi thư viện chức năngvàThay đổi ngôn ngữÁp dụng trong chế độ đó cung cấp một tài khoản đầy đủ hơn (nhưng vẫn không đầy đủ) về sự khác biệt. Chế độ tương thích không thể làm cho các ngôn ngữ sau này tương đương với XPath 1.0.
Trong SQL: 2006 trở lên, cả hai hướng chuyển đổi giữa các loại dữ liệu SQL tiêu chuẩn và các loại lược đồ 윈 토토 được chỉ định chính xác. Tuy nhiên, các quy tắc được thể hiện bằng cách sử dụng các loại và ngữ nghĩa của XQuery/XPath và không có ứng dụng trực tiếp vào mô hình dữ liệu khác nhau của XPath 1.0.
khiPostgreSQLBản đồ giá trị dữ liệu SQL thành 윈 토토 (như trong윈 토토element
) hoặc 윈 토토 thành SQL (như trong các cột đầu ra của윈 토토table
), ngoại trừ một vài trường hợp được xử lý đặc biệt,PostgreSQLChỉ cần giả sử rằng biểu mẫu chuỗi XPath 1.0 của loại dữ liệu 윈 토토 sẽ hợp lệ như dạng đầu vào văn bản của kiểu dữ liệu SQL và ngược lại. Quy tắc này có đức tính đơn giản trong khi sản xuất, đối với nhiều loại dữ liệu, kết quả tương tự như các ánh xạ được chỉ định trong tiêu chuẩn.
Trường hợp khả năng tương tác với các hệ thống khác là một mối quan tâm, đối với một số loại dữ liệu, có thể cần phải sử dụng các chức năng định dạng kiểu dữ liệu (chẳng hạn như trongPostgreSQL : 문서 : 13 : 9.8. 데이터 유형 토토 사이트 추천 토토 사이트 추천 기능) rõ ràng để tạo ra các ánh xạ tiêu chuẩn.
Phần này liên quan đến các giới hạn không vốn có tronglib윈 토토2Thư viện, nhưng áp dụng cho việc triển khai hiện tại trongPostgreSQL.
theo giá trị
Cơ chế vượt qua được hỗ trợTiêu chuẩn SQL xác định haiCác cơ chế vượt quaÁp dụng khi chuyển đối số 윈 토토 từ SQL sang hàm 윈 토토 hoặc nhận kết quả:bởi ref
, trong đó một giá trị 윈 토토 cụ thể giữ lại danh tính nút của nó vàtheo giá trị
, trong đó nội dung của 윈 토토 được truyền nhưng nhận dạng nút không được bảo tồn. Một cơ chế có thể được chỉ định trước danh sách các tham số, là cơ chế mặc định cho tất cả chúng hoặc sau bất kỳ tham số nào, để ghi đè mặc định.
Để minh họa sự khác biệt, nếuX
là giá trị 윈 토토, hai truy vấn này trong môi trường SQL: 2006 sẽ tạo ra đúng và sai, tương ứng:
Chọn 윈 토토Query ('$ a là $ b' đi qua refX
như a,x
như b null trên trống); Chọn 윈 토토Query ('$ a là $ b' đi qua giá trịx
như A,X
như b null trên trống);
PostgreSQLsẽ chấp nhậntheo giá trị
hoặcbởi ref
trong một윈 토토exist
hoặc윈 토토table
Xây dựng, nhưng nó bỏ qua chúng. The윈 토토
21345_21486theo giá trị
.
Hỗ trợ các hàm dựa trên XPath Truyền một tham số để đóng vai trò là mục ngữ cảnh của biểu thức XPath, nhưng không hỗ trợ truyền các giá trị bổ sung có sẵn cho biểu thức như các tham số được đặt tên.
윈 토토 (trình tự)
loạiThePostgreSQL 윈 토토
Kiểu dữ liệu chỉ có thể giữ một giá trị trongDocument
hoặcNội dung
Mẫu. Mục ngữ cảnh biểu thức XQuery/XPath phải là một nút 윈 토토 hoặc giá trị nguyên tử, nhưng XPath 1.0 giới hạn nó chỉ là một nút 윈 토토 và không có loại nút cho phépNội dung
. Kết quả là mộtDocument
là dạng duy nhất của giá trị 윈 토토 màPostgreSQLCó thể cung cấp dưới dạng mục ngữ cảnh XPath.
Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không khớp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.