X-max的值必须大于X-min的值

时间:2014-05-12 04:23:36

标签: sql-server geometry geospatial spatial

我正在尝试为我的表创建一个空间索引:

CREATE TABLE [dbo].[GeoResult](
    [Id] [int] NOT NULL,

    [PointCenter]  AS ([dbo].[ConvertToGeometryPoint]([LatitudeCenter],[LongitudeCenter])),

    [CreatedOn] [datetime] NOT NULL,
 CONSTRAINT [PK_GeoResult] PRIMARY KEY CLUSTERED 
(
    [Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]

当我尝试使用Add Spatial Index向导添加新的空间索引时,出现此错误: The value of  X-max  must be greater than the value of X-min.

鉴于我的应用需要支持全球位置,Bounding Box属性的最佳值应该是多少?

1 个答案:

答案 0 :(得分:0)

这里有两个问题。

  1. 您正在使用几何网格,但应使用地理网格。自己进行基准测试。
  2. 该文档位于https://docs.microsoft.com/en-us/sql/t-sql/statements/create-spatial-index-transact-sql?view=sql-server-2017,要求:
      

    边界框坐标仅适用于USING GEOMETRY_GRID子句。

         

    xmax必须大于xmin,ymax必须大于ymin。您可以指定任何有效的浮点值表示形式,前提是:xmax> xmin和ymax> ymin。否则会引发相应的错误。

         

    没有默认值。