2012-03-29 115 views
3

我想我找不到我的(明显的愚蠢)错误:-)。空间数据类型

在数据库上下面的SELECT语句:

SELECT geography::STMPolyFromText('MULTIPOLYGON((((11.791039 47.5448077, 11.7910551 47.544757, 11.7911677 47.5446375, 11.7644687 47.542786))))',4326) 

和错误是:

NET Framework error occurred during execution of user-defined routine or aggregate "geography": 
System.FormatException: 24141: A number is expected at position 26 of the input. The input has (11.791039. 
System.FormatException: 
    at Microsoft.SqlServer.Types.WellKnownTextReader.RecognizeDouble() 
    at Microsoft.SqlServer.Types.WellKnownTextReader.ParseLineStringText() 

不容找到我的错误,你看到的错误也许有?!


就找到了解决办法:一 '(' 太多

回答

1

我认为你有一个太多对括号后MULTIPOLYGON ... this example shows only 3,但你必须4.

。请改为:

SELECT geography::STMPolyFromText 
(
    'MULTIPOLYGON 
    ( 
     (
      (
       11.791039 47.5448077, 
       11.7910551 47.544757, 
       11.7911677 47.5446375, 
       11.7644687 47.542786 
      ) 
     ) 
    )',4326 
) 
相关问题