Nhiều hơn một hàm có thể được xác định với cùng một tên SQL, miễn là các đối số chúng thực hiện là khác nhau. Nói cách khác, tên hàm có thể làquá cách đọc kèo bóng đá. Cho dù bạn có sử dụng nó hay không, khả năng này đòi hỏi các biện pháp phòng ngừa bảo mật khi gọi các cách đọc kèo bóng đá trong cơ sở dữ liệu nơi một số người dùng không tin tưởng người dùng khác;Phần 10.3. Khi một truy vấn được thực thi, máy chủ sẽ xác định cách đọc kèo bóng đá gọi từ các loại dữ liệu và số lượng đối số được cung cấp.
Khi tạo ra một họ các cách đọc kèo bóng đá quá tải, người ta nên cẩn thận không tạo ra sự mơ hồ. Chẳng hạn, đưa ra các cách đọc kèo bóng đá:
Tạo kiểm tra cách đọc kèo bóng đá (int, real) trả về ...
Không rõ ngay hàm nào sẽ được gọi với một số đầu vào tầm thường nhưKiểm tra (1, 1.5)
. Các quy tắc độ phân giải hiện đang được thực hiện được mô tả trongChương 10, nhưng thật không khôn ngoan khi thiết kế một hệ thống dựa trên hành vi này.
Một hàm có một đối số duy nhất thuộc loại tổng hợp thường không có cùng tên với bất kỳ thuộc tính nào (trường) của loại đó. Nhớ lại rằng
được coi là tương đương vớithuộc tính
(Bảng
)
. Trong trường hợp có sự mơ hồ giữa một hàm trên loại tổng hợp và thuộc tính của loại tổng hợp, thuộc tính sẽ luôn được sử dụng.Bảng
.thuộc tính
) Nhưng tốt hơn là tránh vấn đề bằng cách không chọn tên mâu thuẫn.lược đồ
.func
(Bảng
)
Một cuộc xung đột có thể khác là giữa các hàm Variadic và không variadic. Chẳng hạn, có thể tạo cả haifoo (số)
vàfoo (số variadic [])
. Trong trường hợp này, không rõ cái nào nên được khớp với một cuộc gọi cung cấp một đối số số duy nhất, chẳng hạn nhưfoo (10.1)
. Quy tắc là cách đọc kèo bóng đá xuất hiện sớm hơn trong đường dẫn tìm kiếm được sử dụng hoặc nếu hai hàm nằm trong cùng một lược đồ, thì một hàm không được ưu tiên.
Khi quá tải các hàm ngôn ngữ C, có một ràng buộc bổ sung: Tên C của mỗi hàm trong họ của các hàm bị quá tải phải khác với tên C của tất cả các cách đọc kèo bóng đá khác, bên trong hoặc được tải động. Nếu quy tắc này bị vi phạm, hành vi không thể di động.AS
mệnh đề cho SQLTạo cách đọc kèo bóng đá
lệnh phân tách tên hàm SQL từ tên hàm trong mã nguồn C. Ví dụ:
Tạo kiểm tra cách đọc kèo bóng đá (int) Trả về intFileName
',' test_1arg 'FileName
',' test_2arg '
Tên của các hàm C ở đây phản ánh một trong nhiều quy ước có thể.
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 phù hợpMẫu nàyĐể báo cáo vấn đề tài liệu.