क्या एसक्यूएल सर्वर का उपयोग करके स्थानिक डेटा को फिर से बनाना संभव है?


19

एसक्यूएल सर्वर स्थानिक डेटा बनाते समय एक SRID लेता है, लेकिन क्या निर्देशांक का अनुवाद करने वाले एक अलग SRID के साथ पुनर्प्राप्त करना संभव है?

उदाहरण के लिए, मान लें कि मेरे पास SRID 4258 का उपयोग करते हुए स्थानिक बहुभुजों का एक गुच्छा है, लेकिन मैं कुछ पहले से मौजूद डेटा के साथ उपयोग करना चाहूंगा, जिसमें 4326 का SRID है - क्या वहाँ रूपांतरण में बनाया गया है, या क्या मुझे इसे संभालना है अपने आप को रूपांतरित करें?

SQL-MM विधि, जिसे PostGIS लागू करता है ST_Transform। मैं SQL सर्वर में कैसे करूँ?


कृपया मेरे उत्तर पर एक नज़र डालें: stackoverflow.com/questions/52618277/…
mohsen hs

जवाबों:


18

नहीं।

रूपांतरण - एक स्थानिक रेफ से दूसरे में बदलने की क्षमता: नहीं - 3-पार्टी टूल्स की आवश्यकता है, ज्यामिति 0 और 999999 के बीच किसी भी SRID का उपयोग कर सकती है। स्थानिक उपकरण मुक्त सीएलआर ऐड-ऑन सीमित ट्रांसफॉर्म समर्थन प्रदान करता है।

स्रोत: http://www.bostongis.com/PrinterFriendly.aspx?content_name=sqlserver2008r2_oracle11gr2_postgis15_compare


9

डिफ़ॉल्ट रूप से नहीं, लेकिन GitHub पर MSDN द्वारा विकसित SQL सर्वर स्थानिक उपकरण की जाँच करें । विशेष रूप से, affine परिवर्तन कार्य करता है।


+1 मैं इन साधनों को Sql सर्वर का अनिवार्य हिस्सा मानता हूं।
Kirkkendall

6

ईपीएसजी से पुनरावृत्ति के लिए उदाहरण: 2193 से ईपीएसजी: 3857

c:\OSGeo4W64\bin\ogr2ogr.exe ^
 -f "MSSQLSpatial"^
 "MSSQL:server=DestServerName;database=DestDbName;trusted_connection=yes"^
 "MSSQL:server=SourceServerName;database=SourceDbName;trusted_connection=yes"^
 -sql "SELECT [Id], [Shape].STAsText() Shape FROM [SourceDbName].[dbo].[SourceTableName]"^
 -nln "DestTableName"^
 -overwrite^
 -s_srs EPSG:2193^
 -t_srs EPSG:3857

इसके बाद SQL Query को निष्पादित करें

update  [DestDbName].[dbo].[DestTableName]
set     [ogr_geometry] =  geometry::STGeomFromText([shape], 3857)

0

मेरे पास एक समान समस्या थी और इसे .Net में हल किया गया था। मैंने C # में एक dll विकसित किया और फिर इसे MSSQL में CLR फ़ंक्शन के रूप में परिभाषित किया। जब भी मैं इस फ़ंक्शन को कॉल करता हूं, यह मेरे लिए रूपांतरण करता है। कृपया इस दृष्टिकोण को स्टैक ओवरफ्लो पर देखें । , और यह /programming/52618277/how-do-spatial-reprojection-in-sql-server

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.