isql आमतौर पर एक समस्या निवारण उपकरण के रूप में प्रयोग किया जाता है। उदाहरण के लिए, यदि आपको अपने ODBC बैक एंड के साथ कोई समस्या हो रही है, तो isql आपको यह पहचानने में मदद करेगा कि क्या समस्या आपके आवेदन के साथ है (यानी क्या आपको अभी भी isql में वही समस्या है जो आपको अपने आवेदन में मिलती है) या कहीं और।पी>
isql का -e
ध्वज आपको यह बदलने में सक्षम बनाता है कि कैसे isql SQL को निष्पादित करता है। ऐसा करने से आप यह अनुकरण कर सकते हैं कि आपका आवेदन इस संबंध में कैसा व्यवहार करता है।
यह पता लगाने के लिए कि आपका एप्लिकेशन SQL को निष्पादित करने के लिए किस विधि का उपयोग करता है:
- इन पंक्तियों को /etc/odbcinst.ini में जोड़ें:
[ODBC] Trace=Yes TraceFile=/tmp/sql.log
- अपने आवेदन में एक क्वेरी चलाएँ।
- पाठ संपादक में /tmp/sql.log खोलें। यदि लॉग फ़ाइल में "SQLPrepare" है, तो आपका एप्लिकेशन इस ODBC API का उपयोग करता है। अन्यथा यह
SQLExecDirect
का उपयोग करता है । /etc/odbcinst.ini
में , ODBC ट्रेसिंग बंद करें:[ODBC] Trace=No TraceFile=/tmp/sql.log
डिफ़ॉल्ट रूप से, isql SQLPrepare
का उपयोग करता है और SQLExecute
SQL कथन निष्पादित करने के लिए।
SQLExecDirect
का उपयोग करने के लिए इसके बजाय, -e
. शामिल करें कमांड लाइन पर झंडा:
/usr/local/easysoft/unixODBC/bin/isql.sh -e -v SQLSERVER_SAMPLE SQL> select mycol from mytable