相关疑难解决方法(0)

如何将点设置为地理列的默认值?

我有这个SQL命令,该命令GEOGRAPHY为空间数据创建一个带有-type列的表,该表用于存储纬度/经度对(点)。如何为该列设置默认值?例如,点(0,0)?

CREATE TABLE [dbo].[StationLocations] (
    [Id] [int] NOT NULL,
    [StationId] [int] NOT NULL,
    [Position] [Geography],
CONSTRAINT [PKStationLocations] PRIMARY KEY CLUSTERED ([Id]))
Run Code Online (Sandbox Code Playgroud)

sql sql-server geography spatial

5
推荐指数
1
解决办法
2533
查看次数

SQL Geography POINT Lat,Long中的一个错误

更新:已向Microsoft报告此情况.


在一个简单的(SQL Server 2012)表中,geography列(名称geopoint)填充了几个类似于此的简单行点.POINT (-0.120875610750927 54.1165118880234)执行

select [geopoint].[STAsText](),
       [geopoint].Lat lat,
       [geopoint].Long long 
from mytable 
Run Code Online (Sandbox Code Playgroud)

产生这个

Untitled1   lat long
POINT (-0.120875610750927 54.1165118880234) 54.1165118880234    -0.120875610750927
Run Code Online (Sandbox Code Playgroud)

看起来像一个bug,但它太基本了,应该在发布之前被捕获.我做错了什么?

添加了信息

IT专业人员应该在MSDN上查找Microsoft在SQL服务器上的实现细节.由于实施方面可能存在差异.按照这种情况.作为这证明我刚才检查PostGist的实现的ST_AsText一个geographic列.这很好用!结果是人们所期望的.因此,错误在于SQL的实现.上面例子的正确结果应该是

POINT (54.1165118880234 -0.120875610750927 ) 54.1165118880234 -0.120875610750927
Run Code Online (Sandbox Code Playgroud)

敢说我很可能还有其他与功能工作geographic列相关的错误.由于该领域的基本功能尚未经过全面测试.

sql-server geospatial

-10
推荐指数
1
解决办法
4371
查看次数

标签 统计

sql-server ×2

geography ×1

geospatial ×1

spatial ×1

sql ×1