

# 使用 Babelfish 产品版本参数
<a name="babelfish-guc-version"></a>

 从 Babelfish 2.4.0 和 3.1.0 版本中引入了一个名为 `babelfishpg_tds.product_version` 的全新 Grand Unified Configuration（GUC）参数。此参数允许您将 SQL Server 产品版本号设置为 Babelfish 的输出。

该参数是一个由四部分组成的版本 ID 字符串，每个部分应以“.”分隔。

语法  

```
Major.Minor.Build.Revision
```
+ 主要版本：介于 11 到 16 之间的数字。
+ 次要版本：介于 0 到 255 之间的数字。
+ 构建版本：介于 0 到 65535 之间的数字。
+ 修订版：0 和任意正数。

## 配置 Babelfish 产品版本参数
<a name="babelfish-guc-version-setvalues"></a>

您必须使用集群参数组在控制台中设置 babelfishpg\_tds.product\_version 参数。有关如何修改数据库集群参数的更多信息，请参阅[在 Amazon Aurora 中修改数据库集群参数组中的参数](USER_WorkingWithParamGroups.ModifyingCluster.md)。

当您将产品版本参数设置为无效值时，更改将不会生效。尽管控制台可能会向您显示新值，但该参数会保留先前的值。有关错误消息的详细信息，请检查引擎日志文件。

对于 Linux、macOS 或 Unix：

```
aws rds modify-db-cluster-parameter-group \
--db-cluster-parameter-group-name mydbparametergroup \
--parameters "ParameterName=babelfishpg_tds.product_version,ParameterValue=15.2.4000.1,ApplyMethod=immediate"
```

对于：Windows

```
aws rds modify-db-cluster-parameter-group ^
--db-cluster-parameter-group-name mydbparametergroup ^
--parameters "ParameterName=babelfishpg_tds.product_version,ParameterValue=15.2.4000.1,ApplyMethod=immediate"
```

## 受影响的查询和参数
<a name="babelfish-guc-version-affects"></a>


|  查询/参数  |  结果  |  生效时间  | 
| --- | --- | --- | 
|  SELECT @@VERSION  |  返回用户定义的 SQL Server 版本（babelfishpg\_tsql.version 值 = 原定设置）  |  立即  | 
|  SELECT SERVERPROPERTY('ProductVersion')  |  返回用户定义的 SQL Server 版本  |  立即  | 
|  SELECT SERVERPROPERTY('ProductMajorVersion')  |  返回用户定义的 SQL Server 版本的主要版本  |  立即  | 
|  PRELOGIN 响应消息中的 VERSION 标记  |  服务器返回带有用户定义的 SQL Server 版本的 PRELOGIN 消息  |  在用户创建新会话时生效  | 
|  使用 JDBC 时 LoginAck 中的 SQLServerVersion  |  DatabaseMetaData.getDatabaseProductVersion() 返回用户定义的 SQL Server 版本  |  在用户创建新会话时生效  | 

## 带有 babelfishpg\_tsql.version 参数的接口
<a name="babelfish-guc-version-tsql"></a>

您可以使用参数 babelfishpg\_tsql.version 和 babelfishpg\_tds.product\_version 来设置 @@VERSION 的输出。以下示例显示这两个参数的接口方式。
+ 当 babelfishpg\_tsql.version 参数为“default”且 babelfishpg\_tds.product\_version 为 15.0.2000.8 时。
  +  @@version 的输出 – 15.0.2000.8。
+ 当 babelfishpg\_tsql.version 参数设置为 13.0.2000.8 且 babelfishpg\_tds.product\_version 参数设置为 15.0.2000.8 时。
  + @@version 的输出 – 13.0.2000.8。