FUNCTIONS 和 PROCEDURES 视图 (INFORMATION_SCHEMA):名称包含特殊字符时列的更正¶
如果 UDFs 和存储过程的名称或实参名称中包含以下字符,则该行为变更会对它们产生影响:
冒号 (
:
)左括号 (
(
)右括号 (
)
)
在 INFORMATION_SCHEMA FUNCTIONS 函数 和 PROCEDURES 视图中, argument_signature
和 data_type
列包含这些函数和存储过程的以下值:
- 变更前:
argument_signature
和data_type
不包含正确的实参签名和返回数据类型。argument_signature
列中的值可能包含左括号或以左括号开头的函数或过程名称部分。data_type
列中的值可能包含 TABLE 前缀。- 变更后:
argument_signature
和data_type
包含正确的实参签名和返回数据类型。
例如,假设 UDF 名称中包含冒号:
CREATE OR REPLACE FUNCTION "passthrough:function"(arg VARCHAR)
RETURNS VARCHAR
...
argument_signature
和 data_type
列包含以下值:
- 变更前:
+--------------------+------------------------+ | ARGUMENT_SIGNATURE | DATA_TYPE | |--------------------+------------------------| | ( | TABLEVARCHAR(16777216) | +--------------------+------------------------+
- 变更后:
+--------------------+-------------------+ | ARGUMENT_SIGNATURE | DATA_TYPE | |--------------------+-------------------| | (ARG VARCHAR) | VARCHAR(16777216) | +--------------------+-------------------+
请注意,此变更仅解决了 FUNCTIONS 和 PROCEDURES 视图中 INFORMATION_SCHEMA 的问题。ACCOUNT_USAGE 中的 FUNCTIONS 和 PROCEDURES 视图的修复将在将来的行为变更版本中提供。
参考:1404