MinDbCompatibilityLevel(geography 数据类型)
适用于:SQL Server
Azure SQL 数据库 Azure SQL 托管实例
返回识别 geography 数据类型的最基本的数据库兼容级别。
语法
. MinDbCompatibilityLevel ( )
注意
若要查看 SQL Server 2014 (12.x) 及更早版本的 Transact-SQL 语法,请参阅早期版本文档。
返回类型
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 (10.0.x) 兼容:
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 Compatibility Level (Transact-SQL)
SQL Server 数据库引擎的后向兼容性
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈