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

नेस्टेड टेबल को क्वेरी करना

मुझे आपके द्वारा प्राप्त की जा रही विशिष्ट त्रुटि समझ में नहीं आ रही है, लेकिन आम तौर पर आपको SQL कथन में उपयुक्त प्रकार में एक स्पष्ट कास्ट शामिल करने की आवश्यकता होती है:

open O_CURSOR for select * from table(CAST(dados AS t_pontos));

ऐसा इसलिए है क्योंकि स्टेटमेंट को प्रोसेसिंग के लिए पीएल/एसक्यूएल से एसक्यूएल इंजन को सौंप दिया जाता है, और इसमें उपयोगकर्ता-परिभाषित होने के अलावा वेरिएबल के प्रकार के बारे में कोई जानकारी नहीं होती है।

साथ ही, यह केवल तभी काम करता है जब प्रकार (t_pontos .) ) को स्कीमा स्तर पर घोषित किया जाता है, अर्थात CREATE TYPE . के साथ बयान। अगर इसे पीएल/एसक्यूएल कोड में कहीं घोषित किया गया है, उदा। पैकेज विनिर्देश में, SQL इंजन प्रकार की परिभाषा तक नहीं पहुंच सकता।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मेरे एसक्यूएल परिणामों को डुप्लिकेट कैसे करें?

  2. संग्रह विधि:Oracle डेटाबेस में COUNT फ़ंक्शन

  3. Oracle SQL डेवलपर - java.library.path में कोई ocijdbc12 नहीं है

  4. ओरेकल 12.1.0.2 . पर भारी अदला-बदली

  5. cx_Oracle और अपवाद हैंडलिंग - अच्छे अभ्यास?