SQLite कमांड लाइन इंटरफ़ेस में .mode
. नामक एक आसान डॉट कमांड है , जो आपको क्वेरी परिणामों को स्वरूपित करने के तरीके को बदलने की अनुमति देता है।
इस आदेश के साथ आप जिन मानों का उपयोग कर सकते हैं उनमें से एक है insert
. इस मान का उपयोग करने से बाद के सभी क्वेरी परिणामों को SQL INSERT
. के रूप में स्वरूपित किया जाता है बयान।
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
INSERT विवरण के रूप में परिणाम
अब यहां बताया गया है कि इसे कैसे बदला जाए ताकि परिणाम SQL INSERT
. के रूप में स्वरूपित हो जाएं कथन:
.mode insert Products2
वह कथन उत्पाद2 . निर्दिष्ट करता है तालिका के रूप में जिसमें डेटा डाला जाएगा। आपको उस तालिका का नाम निर्दिष्ट करना होगा जिसमें आप डेटा सम्मिलित करना चाहते हैं।
अब जब मैं पिछला SELECT
run चलाता हूं स्टेटमेंट फिर से, वे एक INSERT
. के रूप में आउटपुट होते हैं बयान।
SELECT * FROM Products;
परिणाम:
INSERT INTO Products2 VALUES(1,'Widget Holder',139.49999999999999999); INSERT INTO Products2 VALUES(2,'Widget Opener',89.700000000000002838); INSERT INTO Products2 VALUES(3,'Widgets - 6 Pack',374.19999999999998862); INSERT INTO Products2 VALUES(4,'Blue Widget',63.000000000000000001);
इस प्रारूप को सहेजें
जब आप एक नई टर्मिनल विंडो में SQLite खोलते हैं, तो आप इन सेटिंग्स को खो देंगे। दूसरे शब्दों में, SQLite अपने डिफ़ॉल्ट आउटपुट स्वरूप (जो एक पाइप से अलग की गई सूची है) पर वापस आ जाएगा।
हालांकि, आप वास्तव में उपरोक्त सेटिंग्स को टेक्स्ट फ़ाइल में सहेज कर अपनी खुद की डिफ़ॉल्ट सेटिंग्स निर्दिष्ट कर सकते हैं।
ऐसा करने के लिए, एक टेक्स्ट फ़ाइल में निम्नलिखित दर्ज करें:
.mode insert NewTable
फिर उस फाइल को .sqliterc
. के रूप में सेव करें आपकी/(उपयोगकर्ता की) होम निर्देशिका में।
अब जब आप एक नई टर्मिनल विंडो में SQLite से कनेक्ट होते हैं, तो यह डिफ़ॉल्ट SQLite सेटिंग्स के बजाय उन सेटिंग्स का उपयोग करेगा।
यह उदाहरण न्यूटेबल को लक्ष्य तालिका के रूप में उपयोग करता है लेकिन आप जो चाहें उपयोग कर सकते हैं।
जाहिर है, ऐसा करने में एकमात्र समस्या यह है कि यदि तालिका बदलती है तो आपको उसका नाम बदलना होगा। और अगर आपको ऐसा करने की परेशानी में जाने की आवश्यकता है, तो इसे आसानी से .mode insert NewTable
के साथ फ्लाई पर बदलना आसान हो सकता है (तालिका नाम को खोजने/बदलने की आवश्यकता के बजाय)। किसी भी मामले में, यदि आपको इसकी आवश्यकता है तो यह एक विकल्प है।