SQLlà một gõ mạnh mẽ ngôn ngữ. Nghĩa là, mọi mục dữ liệu đều có một loại dữ liệu liên kèo bóng đá cúp c2 xác định hành vi của nó và cho phép sử dụng.PostgreSQLcó hệ thống kèo bóng đá cúp c2 mở rộng đó là tổng quát và linh hoạt hơn nhiều so với các khácRDBMStriển khai. Do đó, hầu hết các kèo bóng đá cúp c2 Hành vi chuyển đổi trongPostgreSQLnên được chi phối bởi chung Quy tắc chứ không phải bởiad hocHeuristic, để cho phép các biểu thức kèo bóng đá cúp c2 hỗn hợp có ý nghĩa ngay cả với các kèo bóng đá cúp c2 do người dùng xác định.
ThePostgreSQLMáy quét/trình phân tích cú pháp Giải mã các yếu tố từ vựng chỉ thành năm kèo bóng đá cúp c2 cơ bản: số nguyên, số điểm nổi, chuỗi, tên và từ khóa. Hầu hết các kèo bóng đá cúp c2 mở rộng được đầu tiên được mã hóa thành chuỗi. TheSQLĐịnh nghĩa ngôn ngữ cho phép chỉ định tên kèo bóng đá cúp c2 bằng chuỗi và cơ chế này có thể là Được sử dụng trongPostgreSQLĐể bắt đầu trình phân tích cú pháp xuống đường dẫn chính xác. Ví dụ: truy vấn
tgl = chọn văn bản 'gốc' là "nhãn", điểm '(0,0)' làm "giá trị"; Nhãn | Giá trị --------+------- Nguồn gốc | (0,0) (1 hàng)
có hai hằng số theo nghĩa đen, kèo bóng đá cúp c2Textvàđiểm. Nếu một kèo bóng đá cúp c2 không được chỉ định cho một Chuỗi theo nghĩa đen, sau đó là kèo bóng đá cúp c2 trình giữ chỗkhông xác địnhđược gán ban đầu, sẽ được giải quyết trong kèo bóng đá cúp c2 giai đoạn sau như được mô tả dưới đây.
11153_11182SQLCấu trúc yêu cầu kèo bóng đá cúp c2 khác biệt Quy tắc chuyển đổi trong11312_11324phân tích cú pháp:
PostgreSQLcho phép Biểu thức với tiền tố và postfix unary (một đối số) toán tử, cũng như kèo bóng đá cúp c2 toán tử nhị phân (hai đối số).
Phần lớnPostgreSQLkèo bóng đá cúp c2 hệ thống được xây dựng xung quanh một bộ chức năng phong phú. Các cuộc gọi chức năng có một hoặc nhiều đối số, đối với bất kỳ truy vấn cụ thể, phải được khớp với các chức năng có sẵn Trong danh mục hệ thống. TừPostgreSQLchức năng cho phép quá tải, tên chức năng một mình không duy nhất xác định chức năng được gọi; trình phân tích cú pháp phải chọn chức năng phù hợp dựa trên các kèo bóng đá cúp c2 dữ liệu của được cung cấp Đối số.
SQL ChènvàCập nhậtCâu lệnh đặt kết quả của các biểu thức vào một bảng. Các biểu thức trong truy vấn phải được kết hợp với, và có lẽ được chuyển đổi thành, các kèo bóng đá cúp c2 của các cột đích.
Vì tất cả chọn kết quả từ một liên minhChọnCâu lệnh phải xuất hiện trong một bộ duy nhất của các cột, các kèo bóng đá cúp c2 kết quả của mỗiChọnĐiều khoản phải được khớp và chuyển đổi thành một bộ đồng đều. Tương tự, kết quả Biểu thức của AcaseXây dựng phải được ép buộc theo kèo bóng đá cúp c2 chung đểcaseBiểu thức nói chung có một kèo bóng đá cúp c2 đầu ra.
13320_13402PostgreSQLHệ thống chức năng và toán tử bàn. Có một số heuristic bao gồm trong chuyển đổi kèo bóng đá cúp c2 quy tắc để hỗ trợ tốt hơn kèo bóng đá cúp c2 quy ước choSQLCác kèo bóng đá cúp c2 bản địa tiêu chuẩn nhưSmallInt, Số nguyênvàReal.
ThePostgreSQLsử dụng trình phân tích cú pháp quy ước rằng tất cả các chức năng chuyển đổi kèo bóng đá cúp c2 đều có một Đối số của kèo bóng đá cúp c2 nguồn và được đặt tên với cùng tên với kèo bóng đá cúp c2 mục tiêu. Bất kỳ chức năng nào đáp ứng các tiêu chí này là được coi là chức năng chuyển đổi hợp lệ và có thể được sử dụng bởi các trình phân tích cú pháp như vậy. Giả định đơn giản này cung cấp cho trình phân tích cú pháp sức mạnh để khám phá các khả năng chuyển đổi kèo bóng đá cúp c2 mà không mã hóa cứng, cho phép các kèo bóng đá cúp c2 do người dùng xác định mở rộng sử dụng Cùng một tính năng trong suốt.
Một heuristic bổ sung được cung cấp trong trình phân tích cú pháp để cho phép đoán tốt hơn về hành vi thích hợp choSQLCác kèo bóng đá cúp c2 tiêu chuẩn. Có một số cơ bảnkèo bóng đá cúp c2 danh mụcXác định:Boolean, Số, chuỗi, BitString, DateTime, TimesPan, hình học, mạng, và Người dùng xác định. Mỗi danh mục, ngoại trừ người dùng do người dùng định nghĩa, có A14910_14926đó là ưu tiên được chọn khi có sự mơ hồ. Trong Danh mục do người dùng xác định, mỗi kèo bóng đá cúp c2 là kèo bóng đá cúp c2 ưa thích của riêng nó. Biểu hiện mơ hồ (những người có phân tích cú pháp nhiều ứng cử viên giải pháp) thường có thể được giải quyết khi có nhiều có thể Các kèo bóng đá cúp c2 tích hợp, nhưng chúng sẽ gây ra lỗi khi có Nhiều lựa chọn cho các kèo bóng đá cúp c2 do người dùng xác định.
Tất cả các quy tắc chuyển đổi kèo bóng đá cúp c2 được thiết kế với một số nguyên tắc trong tâm trí:
Chuyển đổi ngầm không bao giờ có điều đáng ngạc nhiên hoặc Kết quả không thể đoán trước.
Các kèo bóng đá cúp c2 do người dùng xác định, trong đó trình phân tích cú pháp không cóA PrioriKiến thức, nên là"cao hơn"Trong phân cấp kèo bóng đá cúp c2. TRONG biểu thức kèo bóng đá cúp c2 hỗn hợp, các kèo bóng đá cúp c2 bản địa sẽ luôn luôn chuyển đổi thành kèo bóng đá cúp c2 do người dùng xác định (tất nhiên, chỉ khi chuyển đổi là cần thiết).
Các loại do người dùng xác định không liên kèo bóng đá cúp c2. Hiện nay,PostgreSQLkhông có thông tin có sẵn cho nó về mối kèo bóng đá cúp c2 hệ giữa các loại, khác với các heuristic được mã hóa cứng cho các loại tích hợp và các mối kèo bóng đá cúp c2 hệ tiềm ẩn dựa trên các chức năng có sẵn trong Danh mục.
16301_16670
Ngoài ra, nếu một truy vấn thường yêu cầu chuyển đổi cho một hàm và nếu sau đó người dùng xác định chức năng rõ ràng với các kèo bóng đá cúp c2 đối số chính xác, trình phân tích cú pháp nên sử dụng chức năng mới này và sẽ không còn làm Chuyển đổi ngầm bằng cách sử dụng hàm cũ.