MinDbCompatibilityLevel(geography 数据类型)

返回识别 geography 数据类型的最基本的数据库兼容级别。

语法

. MinDbCompatibilityLevel ( )

返回类型

SQL Server 返回类型:int

CLR 返回类型:int

注释

在更改数据库的兼容级别之前使用 MinDbCompatibilityLevel() 测试空间对象的兼容性。 无效的 geography 类型将返回 110。

示例

A.在兼容级别为 110 的情况下测试 CircularString 类型是否兼容

下面的示例测试 CircularString 实例是否与较早版本的 SQL Server 兼容:

DECLARE @g geometry = 'CIRCULARSTRING(-120.533 46.566, -118.283 46.1, -122.3 47.45)';

IF @g.MinDbCompatibilityLevel() <= 110

BEGIN

SELECT @g.ToString();

END

B.在兼容级别为 100 的情况下测试 LineString 类型是否兼容

下面的示例测试 LineString 实例是否与 SQL Server 2008 兼容:

DECLARE @g geometry = 'LINESTRING(-120.533 46.566, -118.283 46.1, -122.3 47.45)';

IF @g.MinDbCompatibilityLevel() <= 100

BEGIN

SELECT @g.ToString();

END

C.测试 Geography 实例的值是否兼容

下面的示例说明两个 geography 实例的兼容级别。 一个小于半球,另一个大于半球:

DECLARE @g geography = geography::Parse('POLYGON((0 -10, 120 -10, 240 -10, 0 -10))');

DECLARE @h geography = geography::Parse('POLYGON((0 10, 120 10, 240 10, 0 10))');

IF (@g.EnvelopeAngle() >= 90)

BEGIN

SELECT @g.MinDbCompatibilityLevel();

END  

IF (@h.EnvelopeAngle() < 90)

BEGIN

SELECT @h.MinDbCompatibilityLevel();

END  

第一个 SELECT 语句返回 110,第二个 SELECT 语句返回 100。

请参阅

参考

ALTER DATABASE 兼容级别 (Transact-SQL)

其他资源

SQL Server 数据库引擎的向后兼容性