
# Babelfish支持的功能
本章节介绍Babelfish 4.3版本支持的T-SQL功能语法、内置函数、系统定义的@@变量、系统存储过程和SQL Server视图。
#### 支持的T-SQL功能或语法
在下表中，介绍了 Babelfish 4.3版本支持的 T-SQL 功能或语法。
表1支持的T-SQL功能或语法 
| T-SQL功能或语法                                                        | 4.3.0 |
|:---|:---|
| SELECT 语句的 4 部分对象名称引用                                             | 支持    |
| 用于更改数据库所有者的 ALTER AUTHORIZATION 语法                                | 支持    |
| ALTER DATABASE *\<db_name\>* MODIFY NAME = *\<new_db_name\>*      | 支持    |
| ALTER FUNCTION                                                    | 不支持   |
| ALTER PROCEDURE                                                   | 支持    |
| ALTER ROLE                                                        | 支持    |
| ALTER USER...WITH LOGIN                                           | 支持    |
| CREATE FUNCTION 中的 AS 关键字                                         | 支持    |
| AT TIME ZONE 子句                                                   | 支持    |
| Babelfish 实例作为链接服务器                                               | 支持    |
| 比较运算符 !\< 和 !\>                                                   | 支持    |
| CREATE INDEX ... ON partition_scheme_name (partition_column_name) | 支持    |
| 在 SQL Server 视图上 CREATE，而不是触发器（DML）                               | 支持    |
| CREATE PARTITION FUNCTION                                         | 支持    |
| CREATE PARTITION SCHEME                                           | 支持    |
| CREATE ROLE                                                       | 支持    |
| CREATE TABLE ... ON partition_scheme_name (partition_column_name) | 支持    |
| CREATE TRIGGER                                                    | 支持    |
| 创建唯一索引                                                            | 支持    |
| 跨数据库过程执行                                                          | 支持    |
| 跨数据库引用 SELECT、INSERT、UPDATE、DELETE                                | 支持    |
| 游标类型的参数仅用于输入参数（不用于输出）                                             | 支持    |
| 使用 bcp 客户端实用程序进行数据迁移                                              | 支持    |
| 数据类型 TIMESTAMP、ROWVERSION                                         | 支持    |
| 对存储过程和函数的调用中的 DEFAULT 关键字                                         | 支持    |
| DBCC CHECKIDENT                                                   | 支持    |
| DROP DATABASE                                                     | 支持    |
| DROP IF EXISTS（对于 SCHEMA、DATABASE 和 USER 对象）                      | 支持    |
| DROP INDEX index ON schema.table                                  | 支持    |
| DROP INDEX schema.table.index                                     | 支持    |
| DROP PARTITION FUNCTION                                           | 支持    |
| DROP PARTITION SCHEME                                             | 支持    |
| DROP ROLE                                                         | 支持    |
| ENABLE/DISABLE TRIGGER                                            | 支持    |
| FULL TEXT SEARCH                                                  | 支持    |
| 使用 CONTAINS 子句进行全文搜索                                              | 支持    |
| 几何和地理空间数据类型                                                       | 支持    |
| GRANT                                                             | 支持    |
| GRANT permission \[ ,...n \] ON SCHEMA                            | 支持    |
| GUC babelfishpg_tds.product_version                               | 支持    |
| 带前导点字符的标识符                                                        | 支持    |
| 针对表的 INSTEAD OF 触发器                                               | 支持    |
| 针对视图的 INSTEAD OF 触发器                                              | 支持    |
| KILL                                                              | 支持    |
| $PARTITION.partition_function_name(partition_column_value)        | 支持    |
| PIVOT                                                             | 支持    |
| REVOKE                                                            | 支持    |
| REVOKE permission \[ ,...n \] ON SCHEMA                           | 支持    |
| SELECT...OFFSET...FETCH 子句                                        | 支持    |
| SELECT FOR JSON AUTO                                              | 支持    |
| SET BABELFISH_SHOWPLAN_ALL ON（和 OFF）                              | 支持    |
| SET BABELFISH_STATISTICS PROFILE ON（OFF）                          | 支持    |
| SET CONTEXT_INFO                                                  | 支持    |
| SET LOCK_TIMEOUT                                                  | 支持    |
| SET NO_BROWSETABLE                                                | 支持    |
| SET rowcount                                                      | 支持    |
| SET SHOWPLAN_ALL                                                  | 支持    |
| SET STATISTICS IO                                                 | 支持    |
| SET TRANSACTION ISOLATION LEVEL REPEATABLE READ                   | 支持    |
| SET TRANSACTION ISOLATION LEVEL SERIALIZABLE                      | 支持    |
| SET TRANSACTION ISOLATION LEVEL 语法                                | 支持    |
| SSMS：使用 Object Explorer 连接对话框进行连接                                 | 支持    |
| SSMS：使用导入/导出向导进行数据迁移                                              | 支持    |
| SSMS：部分支持 Object Explorer                                         | 支持    |
| STDEV                                                             | 支持    |
| STDEVP                                                            | 支持    |
| 具有多个 DML 操作的触发器可以引用转换表                                            | 支持    |
| T-SQL 提示（联接方法、索引用法、MAXDOP）                                        | 支持    |
| 带 LIKE 谓词的 T-SQL 方括号语法                                            | 支持    |
| 存储过程调用中未加引号的字符串值和默认值                                              | 支持    |
| VAR                                                               | 支持    |
| VARP                                                              | 支持    |
   
#### 支持的 T-SQL内置函数
在下表中，介绍了 Babelfish 4.3版本支持的 T-SQL内置函数。
表2支持的 T-SQL内置函数 
| T-SQL 内置函数                                   | 4.3.0 |
|:---|:---|
| APP_NAME                                     | 支持    |
| ATN2                                         | 支持    |
| CHARINDEX                                    | 支持    |
| CHOOSE                                       | 支持    |
| COL_LENGTH                                   | 支持    |
| COL_NAME                                     | 支持    |
| COLUMNS_UPDATED                              | 支持    |
| COLUMNPROPERTY (CharMaxLen, AllowsNull only) | 支持    |
| CONCAT_WS                                    | 支持    |
| CONTEXT_INFO                                 | 支持    |
| CURSOR_STATUS                                | 支持    |
| DATABASE_PRINCIPAL_ID                        | 支持    |
| DATEADD                                      | 支持    |
| DATEDIFF                                     | 支持    |
| DATEDIFF_BIG                                 | 支持    |
| DATEFROMPARTS                                | 支持    |
| DATENAME                                     | 支持    |
| DATEPART                                     | 支持    |
| DATETIMEFROMPARTS                            | 支持    |
| DATETIME2FROMPARTS                           | 支持    |
| DATETIMEOFFSETFROMPARTS                      | 支持    |
| DATETRUNC                                    | 支持    |
| DATE_BUCKET                                  | 支持    |
| EOMONTH                                      | 支持    |
| EXECUTE AS CALLER                            | 支持    |
| fn_listextendedproperty                      | 支持    |
| FOR JSON                                     | 支持    |
| FULLTEXTSERVICEPROPERTY                      | 支持    |
| HAS_DBACCESS                                 | 支持    |
| HAS_PERMS_BY_NAME                            | 支持    |
| HOST_NAME                                    | 支持    |
| HOST_ID                                      | 支持    |
| IDENTITY                                     | 支持    |
| IS_MEMBER                                    | 支持    |
| IS_ROLEMEMBER                                | 支持    |
| IS_SRVROLEMEMBER                             | 支持    |
| ISJSON                                       | 支持    |
| JSON_MODIFY                                  | 支持    |
| JSON_QUERY                                   | 支持    |
| JSON_VALUE                                   | 支持    |
| NEXT VALUE FOR                               | 支持    |
| OBJECT_DEFINITION                            | 支持    |
| OBJECT_SCHEMA_NAME                           | 支持    |
| OPENJSON                                     | 支持    |
| OPENQUERY                                    | 支持    |
| ORIGINAL_LOGIN                               | 支持    |
| PARSENAME                                    | 支持    |
| PATINDEX                                     | 支持    |
| ROWCOUNT_BIG                                 | 支持    |
| SCHEMA_NAME                                  | 支持    |
| SESSION_CONTEXT                              | 支持    |
| SESSION_USER                                 | 支持    |
| SID_BINARY（始终返回 NULL）                        | 支持    |
| SMALLDATETIMEFROMPARTS                       | 支持    |
| SQUARE                                       | 支持    |
| STR                                          | 支持    |
| STRING_AGG                                   | 支持    |
| STRING_SPLIT                                 | 支持    |
| SUSER_SID                                    | 支持    |
| SUSER_SNAME                                  | 支持    |
| SWITCHOFFSET                                 | 支持    |
| SYSTEM_USER                                  | 支持    |
| TIMEFROMPARTS                                | 支持    |
| TODATETIMEOFFSET                             | 支持    |
| TO_CHAR                                      | 支持    |
| TRIGGER_NESTLEVEL（仅限不带参数）                    | 支持    |
| TRY_CONVERT                                  | 支持    |
| TYPE_ID                                      | 支持    |
| TYPE_NAME                                    | 支持    |
| UPDATE                                       | 支持    |
   
#### 支持的T-SQL系统定义的@@变量
在下表中，介绍了 Babelfish 4.3版本支持的 T-SQL 系统定义的@@变量。
![](https://support.huaweicloud.com/kerneldesc-taurusdb-pg/public_sys-resources/caution_3.0-zh-cn.png)
@@version 返回的数据格式与 SQL Server 默认输出的格式存在差异。若您的应用程序逻辑依赖于 @@version 的特定格式，可能会导致预期之外的行为。
表3支持的T-SQL系统定义的@@变量 
| T-SQL 系统定义的 @@ 变量  | 4.3.0 |
|:---|:---|
| @@CURSOR_ROWS      | 支持    |
| @@DATEFIRST        | 支持    |
| @@DBTS             | 支持    |
| @@ERROR            | 支持    |
| @@ERROR=213        | 支持    |
| @@FETCH_STATUS     | 支持    |
| @@IDENTITY         | 支持    |
| @@LANGUAGE         | 支持    |
| @@LOCK_TIMEOUT     | 支持    |
| @@MAX_CONNECTIONS  | 支持    |
| @@MAX_PRECISION    | 支持    |
| @@MICROSOFTVERSION | 支持    |
| @@NESTLEVEL        | 支持    |
| @@PROCID           | 支持    |
| @@ROWCOUNT         | 支持    |
| @@SERVERNAME       | 支持    |
| @@SERVICENAME      | 支持    |
| @@SPID             | 支持    |
| @@TRANCOUNT        | 支持    |
| @@VERSION          | 支持    |
   
#### 支持的 T-SQL系统存储过程
在下表中，介绍了 Babelfish 4.3版本支持的 T-SQL 系统存储过程。
表4支持的 T-SQL系统存储过程 
| T-SQL 系统存储过程                               | 4.3.0 |
|:---|:---|
| sp_addextendedproperty                     | 支持    |
| sp_addlinkedserver                         | 支持    |
| sp_addlinkedsrvlogin                       | 支持    |
| sp_addrole                                 | 支持    |
| sp_addrolemember                           | 支持    |
| sp_babelfish_volatility                    | 支持    |
| sp_column_privileges                       | 支持    |
| sp_columns                                 | 支持    |
| sp_columns_100                             | 支持    |
| sp_columns_managed                         | 支持    |
| sp_cursor                                  | 支持    |
| sp_cursor_list                             | 支持    |
| sp_cursorclose                             | 支持    |
| sp_cursorexecute                           | 支持    |
| sp_cursorfetch                             | 支持    |
| sp_cursoropen                              | 支持    |
| sp_cursoroption                            | 支持    |
| sp_cursorprepare                           | 支持    |
| sp_cursorprepexec                          | 支持    |
| sp_cursorunprepare                         | 支持    |
| sp_databases                               | 支持    |
| sp_datatype_info                           | 支持    |
| sp_datatype_info_100                       | 支持    |
| sp_describe_cursor                         | 支持    |
| sp_describe_first_result_set               | 支持    |
| sp_describe_undeclared_parameters          | 支持    |
| sp_dropextendedproperty                    | 支持    |
| sp_droplinkedsrvlogin                      | 支持    |
| sp_droprole                                | 支持    |
| sp_droprolemember                          | 支持    |
| sp_dropserver                              | 支持    |
| sp_enum_oledb_providers                    | 支持    |
| sp_execute                                 | 支持    |
| sp_execute_postgresql(CREATE, ALTER, DROP) | 支持    |
| sp_executesql                              | 支持    |
| sp_fkeys                                   | 支持    |
| sp_getapplock                              | 支持    |
| sp_helpdb                                  | 支持    |
| sp_helpdbfixedrole                         | 支持    |
| sp_helplinkedsrvlogin                      | 支持    |
| sp_helprole                                | 支持    |
| sp_helprolemember                          | 支持    |
| sp_helpsrvrolemember                       | 支持    |
| sp_helpuser                                | 支持    |
| sp_linkedservers                           | 支持    |
| sp_oledb_ro_usrname                        | 支持    |
| sp_pkeys                                   | 支持    |
| sp_prefix                                  | 支持    |
| sp_prepare                                 | 支持    |
| sp_procedure_params_100_managed            | 支持    |
| sp_releaseapplock                          | 支持    |
| sp_rename                                  | 支持    |
| sp_renamedb                                | 支持    |
| sp_rename（适用于 object_type 'DATABASE'）      | 支持    |
| sp_reset_connection                        | 不支持   |
| sp_serverOption（connect_timeout 选项）        | 支持    |
| sp_set_session_context                     | 支持    |
| sp_special_columns                         | 支持    |
| sp_sproc_columns                           | 支持    |
| sp_sproc_columns_100                       | 支持    |
| sp_statistics                              | 支持    |
| sp_statistics_100                          | 支持    |
| sp_stored_procedures                       | 支持    |
| sp_table_privileges                        | 支持    |
| sp_tablecollations_100                     | 支持    |
| sp_tables                                  | 支持    |
| sp_testlinkedserver                        | 支持    |
| sp_unprepare                               | 支持    |
| sp_updateextendedproperty                  | 支持    |
| sp_who                                     | 支持    |
| xp_qv                                      | 支持    |
   
#### 支持的SQL Server视图
在下表中，介绍了 Babelfish 4.3版本支持的 SQL Server 视图。
表5支持的SQL Server视图 
| Babelfish 支持的 SQL Server 视图         | 4.3.0 |
|:---|:---|
| information_schema.key_column_usage | 支持    |
| information_schema.routines         | 支持    |
| information_schema.schemata         | 支持    |
| information_schema.sequences        | 支持    |
| sys.all_columns                     | 支持    |
| sys.all_objects                     | 支持    |
| sys.all_parameters                  | 支持    |
| sys.all_sql_modules                 | 支持    |
| sys.all_views                       | 支持    |
| sys.columns                         | 支持    |
| sys.configurations                  | 支持    |
| sys.data_spaces                     | 支持    |
| sys.database_files                  | 支持    |
| sys.database_mirroring              | 支持    |
| sys.database_principals             | 支持    |
| sys.database_role_members           | 支持    |
| sys.databases                       | 支持    |
| sys.destination_data_spaces         | 支持    |
| sys.dm_exec_connections             | 支持    |
| sys.dm_exec_sessions                | 支持    |
| sys.dm_hadr_database_replica_states | 支持    |
| sys.dm_os_host_info                 | 支持    |
| sys.dm_os_sys_info                  | 不支持   |
| sys.endpoints                       | 支持    |
| sys.extended_properties             | 支持    |
| sys.indexes                         | 支持    |
| sys.partitions                      | 支持    |
| sys.partition_functions             | 支持    |
| sys.partition_parameters            | 支持    |
| sys.partition_range_values          | 支持    |
| sys.partition_schemes               | 支持    |
| sys.schemas                         | 支持    |
| sys.server_principals               | 支持    |
| sys.server_role_members             | 支持    |
| sys.sql_modules                     | 支持    |
| sys.sysconfigures                   | 支持    |
| sys.syscurconfigs                   | 支持    |
| sys.syslogins                       | 支持    |
| sys.sysprocesses                    | 支持    |
| sys.sysusers                        | 支持    |
| sys.table_types                     | 支持    |
| sys.tables                          | 支持    |
| sys.types                           | 支持    |
| sys.xml_schema_collections          | 支持    |
| syslanguages                        | 支持    |
| sysobjects.crdate                   | 支持    |
   
