CLOB सामान्य रूप से कैरेक्टर लार्ज ऑब्जेक्ट के लिए है, एक SQL क्लॉब एक अंतर्निहित डेटाटाइप है और इसका उपयोग बड़ी मात्रा में टेक्स्ट डेटा को स्टोर करने के लिए किया जाता है। इस डेटाटाइप का उपयोग करके, आप 2,147,483,647 वर्णों तक डेटा संग्रहीत कर सकते हैं।
JDBC API का java.sql.Clob इंटरफ़ेस CLOB डेटाटाइप का प्रतिनिधित्व करता है। चूंकि JDBC में क्लॉब ऑब्जेक्ट को SQL लोकेटर का उपयोग करके कार्यान्वित किया जाता है, यह SQL CLOB (डेटा नहीं) के लिए एक तार्किक सूचक रखता है।
MySQL डेटाबेस इस डेटा प्रकार के लिए चार चरों का उपयोग करके समर्थन प्रदान करता है, जैसे कि TINYTEXT, TEXT, MEDIUMTEXT और, LONGTEXT।
CLOB डेटा टाइप को स्ट्रिंग में बदलने के लिए
- getClob() . का उपयोग करके तालिका से क्लॉब मान पुनर्प्राप्त करें या getCharacterStream() तैयार विवरण . की विधि इंटरफ़ेस।
रीडर r =clob.getCharacterStream();
- पात्रों की पुनर्प्राप्त स्ट्रीम से प्रत्येक वर्ण को एक-एक करके पढ़ें और उन्हें स्ट्रिंगबिल्डर में जोड़ें या स्ट्रिंगबफ़र ।
int j =0;StringBuffer बफर =नया StringBuffer ();int ch;जबकि ((ch =r.read ())!=-1) {buffer.append(""+(char)ch);} System.out.println(buffer.toString());j++;
- आखिरकार, प्राप्त स्ट्रिंग को प्रदर्शित या संग्रहीत करें।
System.out.println(buffer.toString());
उदाहरण
आइए technologies_data . नाम से एक टेबल बनाएं MySQL डेटाबेस में निम्न क्वेरी का उपयोग कर -
क्रिएट टेबल टेक्नोलॉजीज (नाम VARCHAR(255), टाइप VARCHAR(255), आर्टिकल LONGTEXT);
तालिका का तीसरा स्तंभ आलेख CLOB प्रकार के डेटा को संग्रहीत करता है।
निम्नलिखित JDBC प्रोग्राम शुरू में 5 रिकॉर्ड्स को टेक्नोलॉजी_डेटा टेबल में टेक्स्ट फाइल (इसकी सामग्री) को आर्टिकल कॉलम (CLOB टाइप) में स्टोर करता है।
फिर, यह तालिका के रिकॉर्ड को पुनः प्राप्त करता है और लेख के नाम और सामग्री को प्रदर्शित करता है। यहां, हम पुनर्प्राप्त CLOB के डेटा को स्ट्रिंग में बदलने और उसे प्रदर्शित करने का प्रयास कर रहे हैं।
आयात करें परिणामसेट; आयात java.sql.Statement; सार्वजनिक वर्ग ClobToString {सार्वजनिक स्थैतिक शून्य मुख्य (स्ट्रिंग args []) अपवाद फेंकता है {// ड्राइवर DriverManager.registerDriver को पंजीकृत करना (नया com.mysql.jdbc.Driver ()); // कनेक्शन प्राप्त करना स्ट्रिंग mysqlUrl ="jdbc:mysql://localhost/sampledatabase"; कनेक्शन कॉन =DriverManager.getConnection (mysqlUrl, "रूट", "पासवर्ड"); System.out.println ("कनेक्शन स्थापित ......"); // एक स्टेटमेंट ऑब्जेक्ट बनाना स्टेटमेंट stmt =con.createStatement (); // मान सम्मिलित करना स्ट्रिंग क्वेरी ="प्रौद्योगिकी में सम्मिलित करें_डेटा मान (?,?,?)"; रेडीस्टेडमेंट pstmt =con.prepareStatement (क्वेरी); pstmt.setString(1, "JavaFX"); pstmt.setString(2, "जावा लाइब्रेरी"); FileReader रीडर =नया FileReader ("E:\\images\\javafx_contents.txt"); pstmt.setClob(3, पाठक); pstmt.execute (); pstmt.setString(1, "कॉफीस्क्रिप्ट"); pstmt.setString(2, "स्क्रिप्टिंग भाषा"); पाठक =नया फ़ाइल रीडर ("ई:\\ छवियां \\ Coffeescript_contents.txt"); pstmt.setClob(3, पाठक); pstmt.execute (); pstmt.setString(1, "कैसेंड्रा"); pstmt.setString(2, "NoSQL डेटाबेस"); पाठक =नया फ़ाइल रीडर ("ई:\\ छवियां \\ cassandra_contents.txt"); pstmt.setClob(3, पाठक); pstmt.execute (); // डेटा प्राप्त करना ResultSet rs =stmt.executeQuery ("टेक्नोलॉजी_डेटा से चुनें *"); System.out.println ("तालिका की सामग्री हैं:"); जबकि (rs.next ()) { System.out.println ("अनुच्छेद:" + rs.getString ("नाम")); क्लॉब क्लॉब =rs.getClob ("आर्टिकल"); रीडर आर =clob.getCharacterStream (); स्ट्रिंगबफर बफर =नया स्ट्रिंगबफर (); इंट च; जबकि ((ch =r.read ())!=-1) {बफ़र.एपेंड (""+(चार) ch); } System.out.println ("सामग्री:" +buffer.toString ()); System.out.println (""); } }}आउटपुट
कनेक्शन स्थापित...तालिका की सामग्री हैं:अनुच्छेद:JavaFXContents:JavaFX एक जावा लाइब्रेरी है जिसके उपयोग से आप रिच इंटरनेट एप्लिकेशन विकसित कर सकते हैं। जावा तकनीक का उपयोग करके, इन अनुप्रयोगों की ब्राउज़र प्रवेश दर 76% है। लेख:CoffeeScriptContents:CoffeeScript रूबी और पायथन पर आधारित एक हल्की भाषा है जो जावास्क्रिप्ट में ट्रांसकंपाइल (एक स्रोत भाषा से दूसरी भाषा में संकलित) करती है। यह जावास्क्रिप्ट के विचित्र भागों से बचने के लिए बेहतर सिंटैक्स प्रदान करता है, फिर भी भाषा के लचीलेपन और सुंदरता को बनाए रखता है। लेख:कैसेंड्रा सामग्री:अपाचे कैसेंड्रा एक उच्च स्केलेबल, उच्च-प्रदर्शन वितरित डेटाबेस है जिसे कई कमोडिटी सर्वरों में बड़ी मात्रा में डेटा को संभालने के लिए डिज़ाइन किया गया है, जो प्रदान करता है विफलता के एक भी बिंदु के साथ उच्च उपलब्धता। यह एक प्रकार का NoSQL डेटाबेस है। आइए पहले समझते हैं कि NoSQL डेटाबेस क्या करता है।