Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

SDO_GEOMTRY को GeoJSON में कैसे बदलें

यह cx_Oracle के (अभी तक अप्रकाशित) संस्करण का उपयोग कर रहा है जो वस्तुओं के बंधन और वस्तुओं के अन्य उन्नत उपयोगों का समर्थन करता है। ज्यामिति के सम्मिलन को प्रदर्शित करने के लिए cx_Oracle के साथ दिए गए नमूने का उपयोग करते हुए, निम्न कोड उस तरह से बनाई गई वस्तु को JSON में बदल देगा। नीचे दिए गए ObjectRepr() फ़ंक्शन को Oracle से लौटाई गई किसी भी वस्तु के लिए काम करना चाहिए। यह केवल वस्तु पर मेटाडेटा पढ़ता है और वस्तु को विशेषताओं के शब्दकोश या मूल्यों की सूची में बदल देता है।

import cx_Oracle
import json

connection = cx_Oracle.Connection("user/[email protected]")
typeObj = connection.gettype("SDO_GEOMETRY")
cursor = connection.cursor()
cursor.execute("""
        select Geometry
        from TestGeometry
        where IntCol = 1""")
obj, = cursor.fetchone()

def ObjectRepr(obj):
    if obj.type.iscollection:
        returnValue = []
        for value in obj.aslist():
            if isinstance(value, cx_Oracle.Object):
                value = ObjectRepr(value)
            returnValue.append(value)
    else:
        returnValue = {}
        for attr in obj.type.attributes:
            value = getattr(obj, attr.name)
            if value is None:
                continue
            elif isinstance(value, cx_Oracle.Object):
                value = ObjectRepr(value)
            returnValue[attr.name] = value
    return returnValue

print("JSON:", json.dumps(ObjectRepr(obj)))



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL में n यादृच्छिक पंक्तियों को अपडेट करें

  2. विशिष्ट परिदृश्य के लिए Oracle क्वेरी को अपडेट करने के लिए कनवर्ट करें

  3. समवर्ती प्रबंधक में अनुरोध सेट

  4. कैसे पता करें कि कोई VARRAY के भीतर कोई मान मौजूद है या नहीं?

  5. Oracle sql क्वेरी में शामिल होने के साथ हटाएं