2013-05-02 12 views
5

पर ओरेकल SDO_GEOMETRY आयात करें मैं एक ऐसी सेवा का निर्माण कर रहा हूं जो एक सिस्टम से कई ज्यामिति का चयन करता है जो ओरेकल 10 जी में अपनी ज्यामिति संग्रहीत करता है, और फिर किसी अन्य द्वारा उपयोग के लिए SQL सर्वर डेटाबेस में उनकी प्रति सहेजता है प्रणाली।SQL सर्वर ज्यामिति

SDO_UTIL.TO_WKTGEOMETRY पर पहले देखा()। हालांकि, ज्यामिति को 3 डी ज्यामिति के रूप में संग्रहीत किया जाता है (भले ही जेड-लेयर हमेशा 0 है, इसलिए यह काम नहीं करेगा क्योंकि WKT केवल 2 डी में काम करता है)।

विकल्प संख्या दो तब SDO_UTIL.TO_GMLGEOMETRY() था, हालांकि यह वी 2 में जीएमएल लौटाता है, और एसक्यूएल सर्वर उन्हें जीएमएल वी 3.1.1 में पसंद करेगा (जिसे मैं पढ़ सकता हूं) (और इसे बदलने का एक आसान तरीका नहीं मिला है) इन)।

किसी अन्य विकल्प, हो सकता है कि इस बात के लिए इस्तेमाल किया जा सकता कुछ तीसरे पक्ष के पुस्तकालयों की एक विचार है?

उत्तर

1

मैं) वास्तव में इस्तेमाल किया, यह, SDO_LRS.CONVERT_TO_STD_GEOM (एक पुराने धागा (oracle forum link) ने वही समस्या, पर चर्चा sdo_geoms z परत एकदम चमक के रूप में पाया जाता है, यह 2 डी में बनाया है।

2

एक संभावना यह TOWKB उपयोग करने के लिए है? एसडीओ_ जीमेट्री को डब्लूकेबी में परिवर्तित करने के लिए ओरेकल स्थानिक में कार्य करें। फिर SQL सर्वर से ओरेकल में लिंक किए गए सर्वर के साथ नीचे कुछ ऐसा उपयोग करें।

WITH A AS (SELECT MI_PRINX, STREET,geometry::STGeomFromWKB(WKB,4283).MakeValid() as geom from SISTDB..GIPS.WKB_ROADS_TEST_V)insert into sde.TRA_LAN_QueenslandRoadsSELECT MI_PRINX as ID, STREET,geography::STGeomFromWKB(geom.STAsBinary(),4283) as geog from A; 
+0

Thx SDO_UTIL.TO_WKTGEOMETRY (SDO_LRS.CONVERT_TO_STD_GEOM (GEOMETRY_C)) वाली WKT- के रूप में, है, लेकिन मेरे मामले में मैं SDO_LRS पैकेज में एक समारोह का उपयोग कर समाप्त हो गया:

तो अंत में मैं एक वाली WKT- इस के साथ मिल गया। –

+1

डब्लूकेबी तेजी से हो सकता है? – thylacine

+0

आप शायद सही हैं, इसे अगले अपडेट में बदल देंगे :) –