में एसक्यूएल प्रश्नों को निष्पादित करना मैं फ्रीटीटीएस और कमांड लाइन का उपयोग करके मिंट लिनक्स वीएम के माध्यम से एक माइक्रोसॉफ्ट एसक्यूएल सर्वर 2008 इंस्टेंस से कनेक्ट करने में सक्षम हूं, इस पर एसक्यूएल स्टेटमेंट निष्पादित करने के लिए। अब मैं इसे एक बैश स्क्रिप्ट में स्वचालित करना चाहता हूं। मैं सफलतापूर्वक मेरी bash लिपि में प्रवेश करने में सक्षम हूँ:फ्री टीडीएस बैश: माइक्रोसॉफ्ट एसक्यूएल सर्वर
TDSVER=8.0 tsql -H servername -p 1433 -D dbadmin -U domain\\Administrator -P password
मैं तो मेरे SQL क्वेरी है:
USE dbname GO delete from schema.tableA where ID > 5 GO delete from schema.tableB where ID > 5 GO delete from schema.tableC where ID > 5 GO exit
यह काम करता है जब freeTSD कमांड लाइन के माध्यम से मैन्युअल कर रही है, लेकिन नहीं है जब मैं बैश फ़ाइल में डाल । मैंने इस पोस्ट का पालन किया: freeTSD & bash।
echo "USE dbname GO delete from schema.tableA where userid > 5 go delete from schema.tableB where userid > 5 go delete from schema.tableC where ID > 5 GO exit" > tempfile | TDSVER=8.0 tsql -H servername -p 1433 -D dbname -U domain\\Administrator -P password < tempfile
बैश स्क्रिप्ट का आउटपुट है:
locale is "en_US.UTF-8"
locale charset is "UTF-8"
Default database being set to sbdb
1> 2> 3> 4> 5> 6> 7> 8>
और फिर मेरी स्क्रिप्ट के बाकी निष्पादित किया जाता है
यहाँ मेरी bash स्क्रिप्ट नमूना है।
क्या कोई मुझे मेरी समस्या का एक चरण-दर-चरण जवाब दे सकता है?
कुछ हाइपरलिंक समस्याओं :) इनमें से –