2010-11-11 8 views
11

मैंने SQLite के साथ डेटाबेस - functions.db बनाया है। इस डेटाबेस एक टेबल है - कार्य करने - निम्नलिखित क्षेत्रों के साथ: आईडी (पी), तिथि, परियोजना, DUEDATE, स्थिति (अब ट्रिगर के साथ), वर्णनSQLite में प्रक्रिया में एक इंसर्ट प्रक्रिया स्वचालित करने के लिए कैसे?

कमांड लाइन से SQLite में एक नई पंक्ति में प्रवेश करने के लिए, मुझे लिखना है:

sqlite3 tasks.db "insert into todo (project,duedate,status,description) values (2010-11_18,'Home','Urgent','Call the plumber');" 

जो एक लंबी और त्रुटि-प्रवण प्रक्रिया है। तो मैं एक खोल स्क्रिप्ट (bsq) जो इस प्रकार चलाता है के साथ "को स्वचालित" का फैसला किया:

#!/bin/sh 
echo "What project ?" 
read Proj 
echo "For when ?" 
read Due 
echo "What status ?" 
read Stat 
echo "What to do ?" 
read Descr 

echo sqlite3 tasks.db "insert into todo (project,duedate,status,description) values ('$Proj',$Due,'$Stat','$Descr');" 

... और कुछ नहीं होता जब मैं चलाएँ: श bsq। अनुक्रम प्रकट होता है तो मुझे तुरंत संकेत देता है। मैं गलत कहां गया या मैंने क्या छोड़ा (ENTER? लेकिन मैं यह कैसे कर सकता हूं?)?

आपकी मदद

THG

+0

आप क्या उम्मीद करते हैं के लिए धन्यवाद? आप 'echo sqlite' को कॉल करते हैं ... यह स्क्लाइट का आह्वान नहीं करेगा। कृपया स्रोत को सही तरीके से प्रारूपित करें। Textarea के ऊपर आइकन का प्रयोग करें। – khachik

+0

अंतिम गूंज सही है? या आप सीधे sqlite3 निष्पादित कर रहे हैं? यह ठीक काम करता है; अंत में कमांड गूंजना। – falstro

+0

इसके अलावा: sh '$ Proj' में एक चर के रूप में नहीं माना जाता है। '" $ Proj "' – khachik

उत्तर

23
#!/bin/sh 
echo "What project ?" 
read Proj 
echo "For when ?" 
read Due 
echo "What status ?" 
read Stat 
echo "What to do ?" 
read Descr 

echo "im gonna run" sqlite3 tasks.db "insert into todo \ 
    (project,duedate,status,description) \ 
    values (\"$Proj\",$Due,\"$Stat\",\"$Descr\");" 
sqlite3 tasks.db "insert into todo (project,duedate,status,description) \ 
     values (\"$Proj\",$Due,\"$Stat\",\"$Descr\");" 
+0

यह बिल्कुल, बिल्कुल काम किया। बहुत बहुत धन्यवाद (और इस बार, मैं जवाब स्वीकार करना भूल गया ...) – ThG

+0

@ टीएचजी: आप इसे भी ऊपर उठा सकते हैं। –

+5

कृपया ध्यान दें: यह –

संबंधित मुद्दे