更改SQL 2008的多边形“手性”(反转多边形顶点顺序)
我有几百个形状(polygons和multipolygons),每个形状都由数以万计的点组成,这些点正试图进入SQL 2008。 不幸的是,我尝试导入的形状是“右旋”的(每个形状的周长围绕其包含的点顺时针绘制)。SQL Server至少对于geography类型采用“左手”形状(围绕内部逆时针旋转)。这意味着SQL假定我要选择除形状之外的整个地球。有人将其描述为“由内而外”的形状。 从MSDN来看,令人沮丧的是没有说要使用哪种环定向: 如果使用geography数据类型存储空间实例,则必须指定环的方向并准确描述实例的位置。 如果您在SQL 2008中使用错误的环向,它将崩溃并显示以下错误(强调我的意思): 用户定义的例程或聚合“地理”的执行过程中发生了.NET Framework错误:Microsoft.SqlServer.Types.GLArgumentException:24205:指定的输入不代表有效的地理实例,因为它超出了一个半球。每个地理实例必须适合一个半球。导致此错误的常见原因是多边形的环方向错误。 导入形状geometry而不是导入形状geography效果很好,但我想使用geography。 在SQL 2012中,解决此问题显得微不足道,但我与2008紧密相关。 我应该如何转换形状?