![](/img/trans.png)
[英]How do I get something similar to the SERIAL PG datatype in SQL Server 2008?
[英]How do I store Point datatype in SQL Server?
如何最好地在SQL Server數據庫中存儲Point
數據類型?
我正在考慮只是使其成為nvarchar
,然后插入一個點字符串,如: 100,246
然后當我從數據庫中讀取值時才對字符串進行分割,但是有沒有辦法將其作為Point
插入?
SQL Server確實支持Point
數據類型:
創建表:
CREATE TABLE [dbo].[PointTest]
(
[RowId] [int] IDENTITY(1,1) NOT NULL,
[MyPoint] [GEOMETRY] NOT NULL,
)
插入(SRID = 4326):
INSERT INTO PointTest(MyPoint) values (GEOMETRY::Point(3, -4, 4326))
選擇:
SELECT MyPoint.STX X, MyPoint.STY Y FROM PointTest;
SQLFiddle: 鏈接
有關空間數據類型的更多信息:
您可以為每個維度定義2個int變量。 這樣,就無需拆分您從數據庫讀取的值。
X int,
Y int
對於地理點:
create table foo (
id int primary key,
latlon [GEOGRAPHY]
);
insert into foo values (1, geography::Point(40.7, -74, 4326));
select
latlon.Lat as latitude,
latlon.Long as longitude,
latlon.ToString() as plaintext
from foo;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.