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

मैं फाइलों में संग्रहीत एसक्यूएल स्टेटमेंट चलाने के निष्पादन समय को कैसे रिकॉर्ड करूं?

निष्पादन का समय खोजने के लिए , आपको प्रोग्राम की शुरुआत में किसी दिनांक ऑब्जेक्ट को इनिशियलाइज़ करना चाहिए, और उसके बाद प्रोग्राम के अंत में किसी अन्य दिनांक ऑब्जेक्ट से इसकी तुलना करनी चाहिए। यह आपको एक पूर्णांक मान देगा कि इसे निष्पादित करने में कितना समय लगा। फिर जहां भी आपको इसकी आवश्यकता हो वहां इस int का उपयोग करें (उदा। इसे कंसोल पर प्रिंट करें, फ़ाइल में आदि)

Date startDate = new Date();
//Run the rest of the program
Date endDate = new Date();
int msElapsedTime = startDate.getTime() - endDate.getTime();

यदि आपको अपनी क्वेरी के परिणामों से संबंधित जावा प्रोग्राम में कुछ भी करने की आवश्यकता नहीं है, तो आप runtime.exec() का उपयोग करके इसे बहुत आसान बना सकते हैं। mysql प्रश्नों को निष्पादित करने के लिए। यहां एकमात्र बड़ी कमी यह है कि आप प्रभावित पंक्तियों की परिणामी संख्या का प्रिंट आउट नहीं ले सकते:

Date startDate = new Date();
runtime.exec("mysql db_name < /home/liova/download/tpch/queries/Q1.sql");
Date endDate = new Date();
int msElapsedTime = startDate.getTime() - endDate.getTime();

यदि आपको वास्तव में परिणामों के साथ कुछ करने की आवश्यकता है, तो runtime.exec() आपके लिए पर्याप्त नहीं होगा। आगे पढ़ें...

एसक्यूएल स्रोत पढ़ने के लिए , बस इसे एक टेक्स्ट फ़ाइल के रूप में पढ़ें। यह सबसे आसान होगा यदि आपके पास SQL ​​​​की प्रत्येक पंक्ति एक अलग SQL क्वेरी के रूप में है, अन्यथा आपको कुछ पार्सिंग और समायोजन करना होगा। यह रहा एक उदाहरण फ़ाइल को एक बार में एक लाइन पढ़ने के लिए।

एसक्यूएल चलाने के लिए , जेडीबीसी का प्रयोग करें। यह रहा ट्यूटोरियल इस पर। आइटम 1 से 5 एसक्यूएल चलाने और परिणामों का उपयोग करने के लिए आपको जो कुछ भी चाहिए, उसका विवरण देगा (परिणाम को संसाधित करने के लिए क्वेरी चलाने के लिए अपना एसक्यूएल कनेक्शन स्थापित करने से वापस आने वाली ऑब्जेक्ट सेट करें)। यदि इनमें से कोई भी कदम आपको परेशान करता है, तो आपकी सबसे अच्छी शर्त यह है कि आप इस प्रक्रिया में आने वाली विशिष्ट समस्या के अनुरूप एक अलग प्रश्न पूछें।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. बैकअप MySQL Amazon RDS

  2. JSON_REPLACE () - MySQL में JSON दस्तावेज़ में मान बदलें

  3. MySQL ऑटो वृद्धि?

  4. php . में चुनिंदा विकल्प पर इनपुट मान सेट करें

  5. क्या कोई विशेषता एक तालिका को दूसरे पर निर्दिष्ट कर सकती है?