3
TSQL MSSQL 2008R2CONVERT_IMPLICIT插入地理数据类型到一个地理数据类型列时
为什么以下进行CONVERT_IMPLICIT即地理数据类型转换成地理数据类型?
DECLARE @xPolygon NVARCHAR(MAX) = '53.835134 -2.474670, 53.812436 -0.288391, 52.417944 -0.090637, 52.270286 -3.018494, 53.835134 -2.474670'
IF OBJECT_ID('#xSpatialTable') IS NOT NULL
DROP TABLE #xSpatialTable;
CREATE TABLE #xSpatialTable (
id INT IDENTITY (1,1) CONSTRAINT PK_xSpatialTable PRIMARY KEY
,GeogCol1 GEOGRAPHY
,GeogCol2 AS GeogCol1.STAsText()
);
INSERT INTO #xSpatialTable (GeogCol1)
VALUES (GEOGRAPHY::STPolyFromText('POLYGON((' + @xPolygon + '))', 4326));
IF OBJECT_ID('#xSpatialTable') IS NOT NULL
DROP TABLE #xSpatialTable;
从SentryOne SQL计划资源管理器
CONVERT_IMPLICIT(地理,[地理] :: STPolyFromText((N'POLYGON(( '+ [@ xPolygon])+ N'))”, (4326)),0)
同样这里也适用
DECLARE @xLongitude FLOAT = 53.835134
DECLARE @xLatitude FLOAT = -2.474670
IF OBJECT_ID('#xSpatialTable') IS NOT NULL
DROP TABLE #xSpatialTable;
CREATE TABLE #xSpatialTable (
id INT IDENTITY (1,1) CONSTRAINT PK_xSpatialTable PRIMARY KEY
,GeogCol1 GEOGRAPHY
,GeogCol2 AS GeogCol1.STAsText()
);
INSERT INTO #xSpatialTable (GeogCol1)
VALUES (GEOGRAPHY::STGeomFromText('POINT(' + CAST(@xLongitude AS NVARCHAR(20)) + ' ' + CAST(@xLatitude AS NVARCHAR(20)) + ')', 4326));
IF OBJECT_ID('#xSpatialTable') IS NOT NULL
DROP TABLE #xSpatialTable;
从SentryOne SQL计划资源管理器
有没有办法避免这些?
在此先感谢
我没有得到你的发布代码'CONVERT_IMPLICIT'。你可以添加一些你看到这个的截图吗? – iamdave
截图添加 –
这就是我得到:http://i.imgur.com/DnxlGqa.png – iamdave