Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server SQL Server:将几何图形转换为地理图形_Sql Server_Sql Server 2008_Spatial - Fatal编程技术网

Sql server SQL Server:将几何图形转换为地理图形

Sql server SQL Server:将几何图形转换为地理图形,sql-server,sql-server-2008,spatial,Sql Server,Sql Server 2008,Spatial,我在将多边形从几何图形转换为地理图形时遇到了一些问题 我已经找到了以下文章并采取了建议的步骤,但仍然无法将所有实例转换为有效的地理对象 接头起点,以确保方向正确 blogs.msdn.com/b/edkatibah/archive/2008/08/19/working-with-invalid-data-and-the-sql-server-2008-geography-data-type-part-1b.aspx 减少多边形 blogs.msdn.com/b/edkatibah/archive

我在将多边形从几何图形转换为地理图形时遇到了一些问题

我已经找到了以下文章并采取了建议的步骤,但仍然无法将所有实例转换为有效的地理对象

接头起点,以确保方向正确 blogs.msdn.com/b/edkatibah/archive/2008/08/19/working-with-invalid-data-and-the-sql-server-2008-geography-data-type-part-1b.aspx

减少多边形 blogs.msdn.com/b/edkatibah/archive/2009/06/05/working-with-invalid-data-and-the-sql-server-2008-geography-data-type-part-2.aspx

缓冲区和负缓冲区

减少后从集合中移除点

到目前为止,我的过程如下

使用Morten Nielsen的优秀Shape2Sql工具从www.sharpgis.net/page/SQL-Server-2008-Spatial-Tools.aspx将形状文件导入SQL Server Developer Edition 64位

我不得不将形状文件作为几何体导入,因为我遇到了关于无效地理值的错误

然后,我尝试根据下面的SQL脚本创建地理位置

drop table [MapData].[dbo].[World_SeasSplitGeog]

SELECT 
  [IDX]
  ,[OBJECTID]
  ,[NAME]
  ,[ID]
  ,[Gazetteer_]
  ,[Shape_Leng]
  ,[Shape_Le_1]
  ,[Shape_Area]
  ,[ORIG_FID]
  ,dbo.RemoveArtefacts(GEOGRAPHY::STGeomFromWKB(shape.STUnion(shape.STStartPoint()).STBuffer(0.00001).STBuffer(-0.00001).Reduce(0.000001).STAsBinary(),4326).MakeValid()).MakeValid()   as [Shape]  
INTO
   [MapData].[dbo].[World_SeasSplitGeog]
FROM 
   [MapData].[dbo].[World_SeasSplit] 

然而,问题是并非所有的几何图形都转换为有效的地理位置

如果您提供了一些无法转换的几何图形的实际示例,可能会有所帮助。@Damien_不信者我想添加屏幕截图作为示例,但我的级别不允许我添加图像,世界上所有海洋的几何面积,因此WTK非常大,可以添加到Post中,有没有一种方法可以将形状文件附加到我的帖子中?不是真的-你不能简化WTK,这样它仍然会导致问题,但不会太大-这样做有时可以帮助你自己偶然发现实际问题,或者帮助你自己解决这个问题,或者至少更好地强调你认为是什么导致了问题你的问题。对于大多数问题,这里的人更喜欢代码/文本而不是图片-我们无法将图片复制粘贴到management studio并开始使用它。@Meyer:如果是海洋,而您使用的是SQL 2008,您可能遇到了该版本中地理类型的问题,其中给定的地理实例不能跨越多个半球。@BenThul我们正在运行SQL 2014。我们没有收到任何关于多边形超过半球的错误,问题是当在SOL spatial结果中查看地理位置时,某些多边形在全世界都是反向的,除了它们应该在哪里,如果查看几何图形,一切都是完美的