डिफ़ॉल्ट रूप से, जब आप SQLite कमांड लाइन शेल से कनेक्ट होते हैं और एक क्वेरी चलाते हैं, तो परिणाम पाइप से अलग की गई सूची के रूप में वापस आ जाता है।
आपने देखा होगा कि परिणामों में कॉलम नाम शामिल नहीं होते हैं, जो आपके परिणामों को भ्रमित कर सकते हैं यदि आप उन्हें पढ़ने का प्रयास कर रहे हैं, खासकर यदि क्वेरी ने कई कॉलम लौटाए हैं।
सौभाग्य से, आउटपुट को प्रारूपित करने का एक आसान तरीका है ताकि यह कॉलम हेडर वाले कॉलम के रूप में प्रदर्शित हो।
डिफ़ॉल्ट आउटपुट
उदाहरण के तौर पर, SQLite कमांड लाइन इंटरफ़ेस डिफ़ॉल्ट रूप से क्वेरी परिणाम कैसे आउटपुट करता है:
SELECT * FROM Products;
परिणाम:
1|Widget Holder|139.5 2|Widget Opener|89.7 3|Widgets - 6 Pack|374.2 4|Blue Widget|63.0
इसलिए कॉलम हेडर नहीं हैं और इसे पाइप से अलग की गई सूची के रूप में प्रदर्शित किया जाता है।
कॉलम हेडर जोड़ें
प्रत्येक कॉलम में कॉलम नाम जोड़ने के लिए .headers on
. का उपयोग करें ।
.headers on
SELECT * FROM Products;
परिणाम:
ProductId|ProductName|Price 1|Widget Holder|139.5 2|Widget Opener|89.7 3|Widgets - 6 Pack|374.2 4|Blue Widget|63.0
आप .headers off
. का उपयोग करके शीर्षलेखों को अक्षम कर सकते हैं ।
परिणामों को कॉलम के रूप में प्रारूपित करें
आप .mode column
. का भी उपयोग कर सकते हैं परिणामों को कॉलम के रूप में प्रारूपित करने के लिए।
.mode column
SELECT * FROM Products;
परिणाम:
ProductId ProductName Price ---------- ------------- ---------- 1 Widget Holder 139.5 2 Widget Opener 89.7 3 Widgets - 6 P 374.2 4 Blue Widget 63.0
यदि आपको इसे डिफ़ॉल्ट प्रारूप में वापस करने की आवश्यकता है, तो आप .mode list
. का उपयोग कर सकते हैं ।
कॉलम की चौड़ाई बदलें
आप देख सकते हैं कि पिछले उदाहरण में, उत्पाद के नामों में से एक को छोटा कर दिया गया है। ऐसा इसलिए है क्योंकि यह कॉलम की चौड़ाई से अधिक चौड़ा है।
डिफ़ॉल्ट रूप से, कॉलम हेडर नाम और डेटा के पहले कॉलम की चौड़ाई के आधार पर, प्रत्येक कॉलम 1 और 10 वर्णों के बीच चौड़ा होता है। एक कॉलम में फ़िट होने के लिए बहुत विस्तृत डेटा को छोटा कर दिया जाता है।
हालांकि, आप .width
. का उपयोग कर सकते हैं कॉलम को एक विशिष्ट चौड़ाई पर सेट करने के लिए डॉट कमांड।
यहां बताया गया है कि हम पिछले उदाहरण को कैसे ठीक कर सकते हैं ताकि तीसरा उत्पाद छोटा न हो।
.width 0 16 0
SELECT * FROM Products;
परिणाम:
ProductId ProductName Price ---------- ---------------- ---------- 1 Widget Holder 139.5 2 Widget Opener 89.7 3 Widgets - 6 Pack 374.2 4 Blue Widget 63.0
आप सोच रहे होंगे कि मैंने पहले और तीसरे कॉलम को शून्य पर क्यों सेट किया?
0
. के मान का उपयोग करना वास्तव में कॉलम को स्व-समायोजन (एक निश्चित बिंदु तक) बनाता है। निर्दिष्ट करना 0
कॉलम को तीन से अधिक संख्याओं पर सेट करता है; 10, हेडर की चौड़ाई और डेटा की पहली पंक्ति की चौड़ाई।
मेरे मामले में, यह पहले और तीसरे कॉलम के लिए ठीक काम करता है, लेकिन दूसरे कॉलम के लिए नहीं। इसलिए, मैंने उस कॉलम को 16
. पर सेट किया है (तीसरा उत्पाद कितने वर्णों का उपयोग करता है)।
डिफ़ॉल्ट पर रीसेट करें
यदि आपको SQLite डिफ़ॉल्ट (यानी बिना कॉलम हेडर वाली पाइप से अलग सूची) का उपयोग करने के लिए आउटपुट को संक्षेप में रीसेट करने की आवश्यकता है, तो आप बस एक नई टर्मिनल विंडो खोल सकते हैं और वहां से अपने आदेश चला सकते हैं। इस मामले में SQLite अपनी डिफ़ॉल्ट सेटिंग्स का उपयोग करेगा।
या यदि आप डिफ़ॉल्ट सेटिंग्स का उपयोग करने के लिए वर्तमान टर्मिनल विंडो को रीसेट करना चाहते हैं, तो आप हमेशा निम्न का उपयोग कर सकते हैं:
.headers off
.mode list
.separator "|"
इस मामले में, मैंने .separator
. जोड़ा डॉट कमांड, बस अगर आपने पहले सेपरेटर को बदल दिया है।
यदि आप सोच रहे हैं, हाँ, आप .separator ", "
. का उपयोग कर सकते हैं परिणामों को अल्पविराम से अलग की गई सूची के रूप में आउटपुट करने के लिए।
कॉलम सेटिंग जारी रखें
जैसा कि उल्लेख किया गया है, हर बार जब आप SQLite से कनेक्ट करने के लिए एक नई टर्मिनल विंडो खोलते हैं, तो क्वेरीज़ SQLite के डिफ़ॉल्ट स्वरूप (पाइप से अलग की गई सूची) पर वापस आ जाएंगी।
हर बार जब आप SQLite से कनेक्ट होते हैं तो उपरोक्त आदेशों को फिर से दर्ज करने से बचाने के लिए, आप उन्हें .sqliterc
में दर्ज कर सकते हैं। फ़ाइल।
उदाहरण के लिए, एक खाली टेक्स्ट फ़ाइल खोलें और निम्नलिखित दर्ज करें:
.mode column
.headers on
फ़ाइल को .sqliterc
. के रूप में सहेजें उपयोगकर्ता की होम निर्देशिका में, और SQLite हर बार कनेक्ट होने पर इसका उपयोग करेगा।
उदाहरण के लिए, यदि उपयोगकर्ता की होम निर्देशिका /Users/bart . है , तो आप इसे उस निर्देशिका के अंदर रखेंगे, ताकि यह /Users/bart/.sqliterc पर स्थित हो। ।
यह एक छिपी हुई फ़ाइल है, इसलिए आपके सिस्टम के आधार पर आपको पुष्टि करने के लिए कहने वाले विभिन्न संकेत मिल सकते हैं, आदि। जब तक यह उपयोगकर्ता की होम निर्देशिका में सहेजा नहीं जाता तब तक बस संकेतों से सहमत हों।