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

Oracle डेटाबेस में CLOB डालें

आप इसे जटिल बना रहे हैं।

अपनी सूची में प्रत्येक क्लॉब के लिए एक तैयार स्टेटमेंट और ऐडबैच () का उपयोग करें:

String sql = "insert  into " + tempTableName + " values (?)";
PreparedStatement stmt = connection.prepareStatement(sql);
for (String query : readQueries) {
  stmt.setCharacterStream(1, new StringReader(query), query.lenght());
  stmt.addBatch();
}
stmt.exececuteBatch();

भागने वाले तार के साथ कोई खिलवाड़ नहीं, शाब्दिक की लंबाई के साथ कोई समस्या नहीं, अस्थायी क्लॉब्स बनाने की कोई आवश्यकता नहीं है। और संभवत:उतना ही तेज़ है जितना कि एक INSERT ALL कथन का उपयोग करना।

यदि आप वर्तमान ड्राइवर (> 10.2) का उपयोग कर रहे हैं तो मुझे लगता है कि सेट कैरेक्टरस्ट्रीम() कॉल और रीडर का निर्माण भी आवश्यक नहीं है। एक साधारण setString(1, query) संभवतः भी काम करेगा।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ओरेकल एसक्यूएल में दोहरी से 10,000 अद्वितीय आईडी की सूची का चयन कैसे करें

  2. एसक्यूएल:एक विशिष्ट चयन द्वारा यूनियन और ऑर्डर का उपयोग कैसे करें?

  3. ओरेकल में विश्लेषणात्मक कार्यों का उपयोग कैसे करें (कीवर्ड द्वारा विभाजन पर)

  4. ओरेकल डीबी:मैं मामले की अनदेखी करते हुए क्वेरी कैसे लिख सकता हूं?

  5. N+1 अतिरेक और सर्वर समेकन