私はトラックをテキストファイルに記録しましたが、今はポイントタイプとしてSQL Server 2008 R2データベースのテーブルに挿入したいと思います。SQL Server 2008は地理的ポイントを16進数で保存します
OpenRowSetを使用してテキストファイルを読み込んで、各行をテンポラリテーブルに挿入しました。次に、すべての行を解析し、実際の表に右の値を挿入します。ファイルの 各行のようになります。私は実際のテーブルに探していたときになるほど(トラックと命名)その後
INSERT INTO Track(Point)
SELECT
geography::Point(
SUBSTRING(entry,21,2)+'.'+SUBSTRING(entry,23,2)+
SUBSTRING(entry,26,CHARINDEX(',',entry,26)-26),
SUBSTRING(entry,33,3)+'.'+SUBSTRING(entry,36,2)+
SUBSTRING(entry,39,CHARINDEX(',',entry,39)-39)
,4326)
FROM #MYTEMP
:私はこのようなコードで緯度と経度を解析してい
$GPRMC,101142.415,A,6210.1547,N,02929.2220,E,3.9,231.8,150310,,,A*62
そのような何か:
Point
0xE6100000010CE200FA7DFF0C4F40B43C0FEECE4A3D40
これらの点は、(SQL Management Studioの空間結果]タブを使用して)マップ上の右の位置に配置されているが、ノーとしてそれらを参照するにはいずれかの可能性がありますデータベース内の地理的な価値は?
ここでは、SSISがこのタイプの情報の転送を現在サポートしていないため、ジオメトリタイプ(16進数値として表示)を使用するテーブルに挿入する方法を探しました。 GISサイト上で答えを見つけた - https://gis.stackexchange.com/questions/160629/how-to-convert-from-sql-server-geometry-blob-to-something-else?newreg=574a31a90c9142a9b6524ae0dd560d63 – B5A7