转换为nvarchar在MSSQL地理数据类型 [英] Convert nvarchar to geography data type in MSSQL

查看:227
本文介绍了转换为nvarchar在MSSQL地理数据类型的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我从ASP.NET中的浏览器中获取定位数据,并试图将其插入SQL作为地理数据类型,有没有办法转换这TSQL这样我就可以把它作为nvarchar的?

I am getting location data from the browser in ASP.NET and trying to insert it into SQL as a geography data type, is there a way to convert this in TSQL so I can just pass it as NVarchar?

推荐答案

传递一个众所周知的文本,从code(WKT),然后你可以使用 STGeomFromText 在SQL Server中的方法,如:

Pass a Well-Know Text,(WKT) from your code and then you can use STGeomFromText method in SQL Server like:

SELECT geometry::STGeomFromText('LINESTRING (100 100, 20 180, 180 180)', 0)

在C#中,你可以这样做:

In C# you can do:

string WKTRepresentation = "LINESTRING (100 100, 20 180, 180 180)";
using (SqlConnection conn = new SqlConnection("connectionString"))
using (SqlCommand cmd = new SqlCommand("SELECT geometry::STGeomFromText(@WKT, 0)", conn))
{
    conn.Open();
    cmd.Parameters.Add(new SqlParameter("@WKT", SqlDbType.NVarChar) { Value = WKTRepresentation });
    var reader = cmd.ExecuteReader();
}

这篇关于转换为nvarchar在MSSQL地理数据类型的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆