本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
提供了适用于 Aurora PostgreSQL 更新
在下文中,您可以了解有关 Aurora PostgreSQL 的 Babelfish 版本的信息。Babelfish 是 Aurora PostgreSQL 版本 13.4 及更高版本的可用选项。Babelfish 更新随 Aurora PostgreSQL 数据库引擎的某些新版本提供。
有关带有 Babelfish 的 Aurora PostgreSQL 扩展的信息,请参阅在 Babelfish 中 使用 Aurora Post greSQL 扩展。
有关 Babelfish 版本更新的信息,请参阅 Babel fish 版本更新。
有关不同 Babelf ish 版本中支持的列表,请参阅 Aurora PostgreSQL 版本中支持的列表,请参阅 Aurora PostgreSQL 参考 的列表。
主题
Aurora PostgreSQL 3.1
此版本的 Aurora Babelfish 由 Aurora PostgreSQL 15.2 提供。有关 Aurora PostgreSQL 15.2 中的改进的更多信息,请参阅。 Amazon Aurora PostgreSQL 更新 适用于 Aurora 的 Babelfish PostgreSQL 3.1 增加了多项新功能、增强功能和修复。 有关 Aurora PostgreSQL 的 Babelfish fish fish fish for Aurora PostgreSQL。
Aurora Pabelfish
其他改进和增强功能
-
支持从 Aurora PostgreSQL 数据库集群 14.6 和 14.7 的 Babelfish 升级到 Aurora PostgreSQL 15.2 的主要版本。有关主要版本升级的更多信息,请参阅将 Babelfish 集群升级到新 版本。
-
Support 以下函数:STR、APP_NAME、OBJECT_DEFINITION、OBJECT_SCHEMA_NAME、ATN2、DATEDIFF_BIG 函数。
Support 以下 INFORMATION_SCHEMA 视图:序列、例程和架构。
Support 表、视图、过程、函数、序列。
Support sys.systypes 系统兼容性视图。
Support 名为 babelfishpg_tds.product_version 的新 GUC 参数,该参数允许你设置 SQL Server 产品版本号,该版本号由 Babelfish 作为输出返回。有关更多信息,请参阅 使用 Babelfish 产品版本 GUC。
增加了对为 Babelfish for Aurora PostgreSQL 数据库中存在的各种对象生成数据定义脚本的支持。有关更多信息,请参阅 Babelfish 支持的 DDL 导出 。
Babelfish 现在支持使用微软托管 A AWS ctive Directory 的Directory Service 对 Kerberos 进行 Aurora PostgreSQL 数据库 有了这个功能,你可以在连接到 Babelfish 数据库时使用 Microsoft Windows 身份验证进行身份验证。有关更多信息,请参阅 Aurora PostgreSQL 的 Babelfish 的数据库身份验证 。
Babelfish 现在使用 tds_fdw(TDS Foreign Data Wrapper)APG 扩展支持 Aurora PostgreSQL 数据库中的链接服务器。目前仅支持在指定链接服务器上执行指定直通查询的 OPENQUERY 函数。有关更多信息,请参阅 Babelfish 支持链接服务器 。
增强和增强和增强
修复了由于越界数组访问而导致的缓冲区溢出问题。
高优先级稳定性增强功能
修复了包括 OBJECT_ID ()、OBJECT_NAME ()、SCHEMA_ID () 在内的多个系统函数中的性能问题。
修复了系统存储过程 sp_sproc_columns 和 sp_fkeys 中的性能问题。
修复了系统目录视图 sys.all_views、sys.objects 和 sys.types 中的性能问题。
提高了批量加载、T-SQL 解析和预处理语句的性能。
添加了一个新的系统存储过程 sp_babelfish_volity,您可以使用它来设置用户定义函数的波动性,以改善将函数用作查询谓词一部分时的索引使用。
修复了引用已更新表的关联名的 UPDATE FROM 或 DELETE FROM 语句引发错误的问题。
修复了 scope_identity 函数在退出一个作用域后返回错误结果的问题。
修复了从.NET 客户端框架调用命令时名称解析无法按预期工作的问题。
修复了查询优化器不考虑在具有二进制/varbinary 数据类型的列上定义的任何索引作为相等谓词的问题。
其他改进和增强功能
修复了 scope_identity 函数需要的权限高于实际需要的问题。
Support 使用链接服务器的以下存储过程:sp_addlinkedserver、sp_dropserver、sp_linkedservers、sp_addlinkedsrvlogin、sp_droplinkedsrvlogin。
Support 获取序列下一个值的 NEXT VALUE FOR 函数。请注意,此函数不能在某些control-of-flow语句中使用。也不支持 OVER 子句。
修复了使用 sp_describe_undeclared_parameters 处理某些错误时出现的崩溃问题。
修复了创建 Babelfish 扩展程序时出现的罕见错误。
修复了在 sp_executesql 中使用 TVP 时引发错误 “类型名称为空” 的问题。
修复了在使用 FOR XML PATH 子句的子查询中使用带相关名称的 SELECT FOR XML/JSON 行为不会引发错误的问题。
修复了 SELECT FOR JSON 或 SELECT FOR XML 查询未为空表返回正确结果的问题。
修复了访客用户可以在错误的架构中创建对象的问题。
修复了系统存储过程中参数类型的用户定义类型的架构名称解析。
修复了为准备好的语句发出具有超过 100 个绑定参数的查询的应用程序失败的问题。现在,此限制已增加到 2100,以与 SQL Server 使用的限制相匹配。
修复了 sp_executesql 调用中变量名称的大小写处理问题。
sp_fkeys 存储过程现在还在结果集中返回 “延迟性” 列。
修复了 AVG 聚合中导致某些整数数据类型的连接终止的问题。
现在,对于属于同一对象的索引,相应视图的 index_id 和 indid 列返回相同的值,而且 index_id 仅在对象内是唯一的。
修复了在存储过程中使用 nvarchar 或 jo OpenJson in 调用时不会引发错误的问题。
修复了在使用 try_convert 和 try_cast 进行涉及某些整数文字的禁止转换时不会引发错误的问题。
修复了允许 OPENJSON WITH 子句接受表别名的问题。
Support 度数、弧度和乘方函数返回正确的类型。
修复了无法正确处理 sysadmin 的成员资格处理的问题。
修复了使用 CONVERT 函数将日期/时间类型转换为 VARCHAR 类型时的默认输出样式。
在创建程序/函数/触发器中Support 以调用者身份执行子句。
修复了在现有 sp_executesql 作用域之后配置无法恢复的问题。
修复了处理 sys.has_perms_by_name 函数的跨数据库访问时出现的问题。
Support SERVERPROPERTY 函数的ProductLevel和ProductUpdateLevel属性。ProductUpdateLevel总是返回 NULL 并与 T-SQL 定义密切跟ProductLevel踪 Babelfish 版本号。
修复了将表变量用作客户端应用程序的绑定参数时导致错误的问题。
Aurora PostgreSQL 2.
此版本的 Aurora Babelfish 由 Aurora PostgreSQL 14.7 提供。有关 Aurora PostgreSQL 14.7 中的改进的更多信息,请参阅。 Amazon Aurora PostgreSQL 更新 适用于 Aurora 的 Babelfish PostgreSQL 2.4 增加了多项新功能、增强功能和修复。 有关 Aurora PostgreSQL 的 Babelfish fish fish fish for Aurora PostgreSQL。
Aurora Pabelfish
其他改进和增强功能
修复了防止在 “master” 以外的数据库中创建序列时出现错误的问题。
修复了特定场景中批量加载操作期间的崩溃问题。
Aurora Pabelfish
-
支持从 Aurora PostgreSQL 数据库集群 14.3 及更高版本的 Babelfish 升级到 Aurora PostgreSQL 14.7 的次要版本。有关次要版本升级的更多信息,请参阅将 Babelfish 升级到新的次要 版本。
-
支持从 Aurora 的 Babelfish PostgreSQL 数据库集群 13.x 及更高版本升级到 Aurora PostgreSQL 14.7。有关主要版本升级的更多信息,请参阅将 Babelfish 升级到新的主要 版本。
-
Support 以下函数:STR、APP_NAME、OBJECT_DEFINITION、OBJECT_SCHEMA_NAME、ATN2、DATEDIFF_BIG 函数。
Support 以下 INFORMATION_SCHEMA 视图:序列、例程和架构。
Support 表、视图、过程、函数、序列。
Support sys.systypes 系统兼容性视图。
Support 名为 babelfishpg_tds.product_version 的新 GUC 参数,该参数允许你设置 SQL Server 产品版本号,该版本号由 Babelfish 作为输出返回。有关更多信息,请参阅 使用 Babelfish 产品版本 GUC。
增加了对为 Babelfish for Aurora PostgreSQL 数据库中存在的各种对象生成数据定义脚本的支持。有关更多信息,请参阅 Babelfish 支持的 DDL 导出 。
增强和增强和增强
修复了由于越界数组访问而导致的缓冲区溢出问题。
高优先级稳定性增强功能
修复了包括 OBJECT_ID ()、OBJECT_NAME ()、SCHEMA_ID () 在内的多个系统函数中的性能问题。
修复了系统存储过程 sp_sproc_columns 和 sp_fkeys 中的性能问题。
修复了系统目录视图 sys.all_views、sys.objects 和 sys.types 中的性能问题。
提高了批量加载、T-SQL 解析和预处理语句的性能。
添加了一个新的系统存储过程 sp_babelfish_volity,您可以使用它来设置用户定义函数的波动性,以改善将函数用作查询谓词一部分时的索引使用。
修复了引用已更新表的关联名的 UPDATE FROM 或 DELETE FROM 语句引发错误的问题。
修复了 scope_identity 函数在退出一个作用域后返回错误结果的问题。
修复了从.NET 客户端框架调用命令时名称解析无法按预期工作的问题。
其他改进和增强功能
修复了 scope_identity 函数需要的权限高于实际需要的问题。
Support 获取序列下一个值的 NEXT VALUE FOR 函数。请注意,此函数不能在某些control-of-flow语句中使用。也不支持 OVER 子句。
修复了使用 sp_describe_undeclared_parameters 处理某些错误时出现的崩溃问题。
修复了创建 Babelfish 扩展程序时出现的罕见错误。
修复了在 sp_executesql 中使用 TVP 时引发错误 “类型名称为空” 的问题。
修复了在使用 FOR XML PATH 子句的子查询中使用带相关名称的 SELECT FOR XML/JSON 行为不会引发错误的问题。
修复了 SELECT FOR JSON 或 SELECT FOR XML 查询未为空表返回正确结果的问题。
修复了访客用户可以在错误的架构中创建对象的问题。
修复了系统存储过程中参数类型的用户定义类型的架构名称解析。
修复了应用程序为准备好的语句发出具有超过 100 个绑定参数的查询失败的问题。现在,此限制已增加到 2100,以与 SQL Server 使用的限制相匹配。
修复了 sp_executesql 调用中变量名称的大小写处理问题。
sp_fkeys 存储过程现在还在结果集中返回 “延迟性” 列。
修复了 AVG 聚合中导致各种整数数据类型的连接终止的问题。
现在,对于属于同一对象的索引,相应视图的 index_id 和 indid 列返回相同的值,而且 index_id 仅在对象内是唯一的。
修复了在存储过程中使用 nvarchar 或 jo OpenJson in 调用时不会引发错误的问题。
修复了在使用 try_convert 和 try_cast 进行涉及 int 文字的禁止转换时不会引发错误的问题。
修复了允许 OPENJSON WITH 子句接受表别名的问题。
Support 度数、弧度和乘方函数返回正确的类型。
修复了无法正确处理 sysadmin 的成员资格处理的问题。
修复了使用 CONVERT 函数将日期/时间类型转换为 VARCHAR 类型时的默认输出样式。
在创建程序/函数/触发器中Support 以调用者身份执行子句。
修复了在现有 sp_executesql 作用域之后配置无法恢复的问题。
修复了处理 sys.has_perms_by_name 函数的跨数据库访问时出现的问题。
Support SERVERPROPERTY 函数的ProductLevel和ProductUpdateLevel属性。ProductUpdateLevel总是返回 NULL 并与 T-SQL 定义密切跟ProductLevel踪 Babelfish 版本号。
修复了将表变量用作客户端应用程序的绑定参数时导致错误的问题。
Aurora PostgreSQL 2.
此版本的 Aurora Babelfish 由 Aurora PostgreSQL 14.6 提供。有关 Aurora PostgreSQL 14.6 中的改进的更多信息,请参阅。 Amazon Aurora PostgreSQL 更新 适用于 Aurora 的 Babelfish PostgreSQL 2.3 增加了多项新功能、增强功能和修复。 有关 Aurora PostgreSQL 的 Babelfish fish fish fish for Aurora PostgreSQL。
发行版
Aurora Pabelfish
-
支持主要版本Aurora BabelfAurora h。有关主要版本升级的更多信息,请参阅将 Babelfish 集群升级到新 版本。
-
Support T-SQL 提示(连接方法、索引用法、MAXDOP)。有关 Babelfish 支持的 T-SQL 提示的更多信息,请参阅 使用 T-SQL 查询提示提高 Babelfish 查询性能 。
-
Babelfish 现在支持零停机时间修补 (ZDP)。有关更多信息,请参阅 Amazon Aurora 用户 指南中的 次要版本升级和零停机时间补丁 。
-
Support FORMAT () T-SQL 函数,但有一些小限制。
-
Support THROW、PRINT、USE 和 RAISEERROR 语句的估计执行计划。
-
Support Babelfish 中的 JSON_MODIFY 函数,该函数更新 JSON 字符串中属性的值并返回更新后的 JSON 字符串。
-
Support SELECT 语句中的 FROM 子句中的 VALUES () 构造函数。
-
Support sp_addrole、sp_droprole、sp_addrolemember、sp_droprolemember 过程来创建或修改角色。
-
Support sys.all_parameters 目录视图。
-
在所有用户创建的数据库中Support 访客用户,并支持 GRANT/CONNECT TO/FROM 用户(包括访客)。
-
Support sp_helpdbfixedrole 和 DATETIMEOFSETFROM PARTS 函数。
-
-
高优先级稳定性增强功能
-
提高了 IDENTITY_INSERT=ON 的 INSERT 语句的性能。
-
修复了由于使用了不正确的比较运算符,“DROP DATABASE” 语句失败的问题。
-
修复了未正确处理数字类型的数字溢出错误的问题。
-
修复了数据库所有者在其自己的数据库中不被视为 dbo 的问题。
-
修复了 SSL 握手失败的问题,并添加了一些其他改进。
-
修复了 sys.all_objects 视图以正确识别以前报告为标量函数 (FN) 的内联表值函数 (IF) 和表值函数 (TF)。修复了 OBJECTPROP IsInlineFunction ERTY 函数的属性的类似问题。
-
修复了错误地假定 DBO 为数据库角色成员的问题。
-
修复了系统管理员成员无法通过 SSMS 进行连接的问题。
-
更正了触发器和视图的架构名称解析,以便它选择/修改正确的对象(表)。
-
修复了创建名称为大写/小写的角色时目录中的映射一致性问题。
-
修复了因权限不足而拒绝其他登录名访问后删除数据库被阻止的问题。
-
修复了除 TEXT 和 NTEXT 以外的 Babelfish 数据类型的默认排序规则,使其与 babelfishpg_tsql.server_collation_name 参数中提到的排序规则相同。有关更多信息,请参阅 Babelfish 中的默认排序规则。
-
修复了跨数据库对 tempdb.sys.objects 的引用以获得正确结果。
其他改进和增强功能
-
修复了使每个数据库的触发器名称独一无二的问题。
-
修复了从 JDBC 元数据函数调用 sp_tables 时出现的问题。
-
修复了在 LIKE 条件下使用 CHECK 约束时出现的问题。
-
处理存储过程时 sp_sproc_columns 的性能得到改进。
-
sp_sproc_columns 现在包含使用 TVP 作为参数的存储过程的表值参数行。
-
修复了跨数据库引用 INFORMATION_SCHEMA.RUTIONS 和 tempdb.sys.objects 以给出正确的结果。
-
修复了支持各种数字和非数字数据类型的 datetime/smalldatetime 操作的问题。
-
修复了整数数据类型的 SUM 聚合的返回值以返回正确的数据类型。
-
修复了将 “更新/删除” 与表别名一起使用时出现的问题。
-
增加了对所有用户定义的表、视图、过程、函数、触发器和表类型的 sysobjects.crdate (create_date) 的Support。
-
当缺少必需的参数并引发显式错误时,不允许调用过程/函数。
-
修复了在不考虑时间戳(即 hh: mm: ss.msec)的情况下计算日差和时差的问题。
-
修复了 DATEDIFF () 函数在两个输入日期之间返回正确结果的问题,无论输入参数如何。
-
修复了 DATEADD () 函数与 “纳秒” 单位一起使用时出现的问题。
-
修复了 DATEPART ()、DATENAME ()、DATEDIFF () 和 DATEADD () 函数与 'w' 单位一起使用时出现的问题
-
修复了 DATEPART () 和 DATENAME () 允许单位 “y” 的问题。
-
修复了 DATEPART ()、DATENAME ()、DATEDIFF () 和 DATEADD () 函数在将字符串转换为日期时间和识别 mi 单位时出现的问题。
-
Support TRY_CONVERT () 函数。
-
修复了在数组中使用 strict/lax jsonpath 以避免 OPENJSON 错误时出现的问题:“jsonpath 输入处或附近” 的语法错误”。
-
Support UDF(用户定义函数)作为 ALTER TABLE 语句中的列默认值。
-
修复了 SUBSTRING () 采用空参数时出现的问题。
-
Support 从各种数字类型向 SMALLDATETIME 进行投射操作。
-
修复了无法正确处理 sp_helpdb 的 dbname 参数的问题。
-
修复了允许数据库所有者为自己创建另一个用户的问题。
-
修复了在 sp_helpsrvrolemember 和 IS_ROLEMEMBER/IS_MEMBER 函数中不忽略尾部空格的问题。
-
改进了不支持的数据类型的错误消息:HIARCHERYID、GEOGRAPHY、GEOMETRY。
-
修复了即使没有 EXECUTE 关键字也可以成功从其他数据库进行跨数据库过程调用和 sp_ 过程访问的问题。
-
修复了用户 “guest” 不会被删除到任何数据库中,而只是被禁用的问题。
-
修复了用户为访客时程序 sp_helpuser 中 SID 的列值。
-
修复了无法使用资金数据类型处理溢出/下溢的问题。
-
修复了在 tds 中处理错误时无法处理错误的问题。
-
修复了 “无需登录即可创建用户” 的更好错误消息。
-
修复了 sp_helpsrvrolemember 为不支持的服务器级角色引发不支持的错误的问题。
-
修复了 SET BABELFISH_STATISTICS PROFILE 显示计划和执行时间的问题。
-
更正了 Babelfish 对象(如视图和触发器)的架构名称解析,以便选择或修改正确的对象。
-
Support 批量插入的行版本/时间戳数据类型。
-
在 Babelfish 中,sp_babelfish_configure 通过 “打开/关闭” 来支持 enable_pg_hint 和解释相关配置。在使用 sp_babelfish_configure 时有多个匹配项时,允许接受 “忽略/严格” 选项。
-
Support 保留空值 (-k) bcp 选项,以优化实现批量插入。
-
Support 多字节货币符号与货币数据类型一起使用。
-
修复了某些算术表达式收到无效精度/尺度错误的 dotnet 客户端(包括 SSMS)的问题。
-
修复了 sys.all_objects 视图以正确识别以前报告为标量函数 (FN) 的内联表值函数 (IF) 和表值函数 (TF)。修复了 OBJECTPRO IsInlineFunction PERTY 函数属性的类似问题。
-
修复了 is_member 函数为某些角色返回错误结果的问题。
-
改进了支持 ROOT、INCLUDE_NULL_VALUES、WITHOUT_ARRAY_WRAPPER 的 SELECT 语句的 FOR
-
支持新的逃生舱口 “escape_hatch_checkpoint”,默认为 “忽略”。该转义孵化允许在过程代码中使用 CHECKPOINT 语句,但当前尚未实现 CHECKPOINT 语句。
Aurora PostgreSQL 2.
此版本的 Aurora Babelfish 由 Aurora PostgreSQL 14.5 提供。有关 Aurora PostgreSQL 14.5 中的改进的更多信息,请参阅。 Amazon Aurora PostgreSQL 更新 适用于 Aurora 的 Babelfish PostgreSQL 2.2 增加了多项新功能、增强功能和修复。 有关 Aurora PostgreSQL 的 Babelfish fish fish fish for Aurora PostgreSQL。
Aurora Pabelfish
-
修复了无法为 babelfishpg_tsql.server_collation_name 使用 Chinese_prc_ci_as、Japanese_ci_as 等排序规则的问题。
Aurora Pabelfish
增强和增强和增强
修复了由于不正确处理某些应用程序功能的用户输入而导致的 Babelfish 中的严重问题。这是可以追踪的
https://github.com/babelfish-for-postgresql/babelfish_extensions/security/advisories/GHSA-m399-rrc8-j6fj
高优先级稳定性增强功能
修复了 sp_prepare 调用中的错误处理,该错误处理在应用程序发送大量参数时可能导致服务器崩溃。Babelfish 目前最多支持 100 个过程或函数的参数。
修复了某些客户端驱动程序在 SSL/TLS 握手中处理错误的问题。
修复了登录 DROP/CREATE 后,登录者无需创建数据库用户即可访问数据库的问题。
修复了在任何会话中登录后登录都不会中断的问题。
Support 交叉应用和外部应用(横向连接)。
Support 内置函数 SYSTEM_USER、HOST_NAME;主机名在 sys.sysprocess T-SQL 视图中可见;支持 SID_BINARY 函数,但在 Babelfish 中总是返回 NULL。
Support 将数字表达式转换为 DATETIME 的函数。
Support @ @LANGUAGE 变量,其常量值为 'us_english '。
Support 在函数名称前面加上 '::' 的旧式函数调用。
Support sp_helpsrvrolemember 存储过程。
Support msdb.dbo.fn_syspolicy_is_automation 的系统功能。
Support 更多目录:assembly_types、numbered_processellations、plan_guides、同义词、事件、trigger_events、dm_hadr_cluster、xml_indexes、change_tracking_table_table_system_defined_objects、hash_indexes 文件、assembly_modules、change_tracking_database_recovery_status、fulltext_dext_columns、selective_xml_index_paths、fulltex_dex_paths、fulltex_dex_paths、fulltex_dex_pathregistered_search_property_list、syspolicy_system_health_state。
Support 新的 INFORMATION_SCHEMA 目录:COLUMN_DOMAIN_USAGE、CONSTRAINT_COLUMN_USAG、CHECK_CONSTRAMINT、例程、
Support 全新 PG 风格的查询计划:逃生孵化 “babelfish_pgtsql.escape_hatch_showplan_all”。
-
当设置为 “ignore” 时,SET SHOWPLAN_ALL 和 SET BABELFISH_SHOWPLAN_ALL 的行为与 SET BABELFISH_SHOWPLAN_ALL 类似。
-
当设置为 “严格” 时,SET SET STATICS PROFILE 和 SET STATICS PROFILE 配置文件