昨天學習了如何用shell對mysql資料表增刪改查,做了乙個小例子,望與大家共勉,不足之處請大家多多指教。
**如下:
#!/bin/bash
#mysql2.sh
#n=''
mysql="mysql -uroot -pxz123456"
case $1 in
select)
sql="select * from test.$2"
;;delete)
case $2 in
student )
n='sname'
;;course)
n='cname'
;;score )
n='sno'
;;esac
sql="delete from test.$2 where $n='$3'"
;;insert)
case $2 in
student )
n='sno,sname,***,age,addr,class'
sql2="insert into test.$2($n) values('$3','$4','$5',$6,'$7','$8')"
;;course)
n='cno,cname,teacher'
sql2="insert into test.$2($n) values('$3','$4','$5')"
;;score)
n='sno,cno,grade'
sql2="insert into test.$2($n) values('$3','$4',$5)"
;;esac
sql=$sql2
;;update)
case $2 in
student )
if [ "$3" -eq 1 ];then
sql2="update test.$2 set sname='$4' where sno='$5'"
elif [ "$3" -eq 2 ];then
sql2="update test.$2 set ***='$4' where sno='$5'"
elif [ "$3" -eq 3 ];then
sql2="update test.$2 set age=$4 where sno='$5'"
elif [ "$3" -eq 4 ];then
sql2="update test.$2 set addr='$4' where sno='$5'"
else
sql2="update test.$2 set class='$4' where cno='$5'"
fi
;;course)
if [ "$3" -eq 1 ];then
sql2="update test.$2 set cname='$4' where cno='$5'"
else
sql2="update test.$2 set teacher='$4' where cno='$5'"
fi;;
score)
if [ "$3" -eq 1 ];then
sql2="update test.$2 set grade=$4 where sno='$5' and cno='$6' "
else
echo "the list is not exist!"
fi;;
esac
sql=$sql2
;;*)
sql="select * from test.$2"
;;esac
$mysql -e "$sql"
然後可以這樣執行操作,比如查詢 ./mysql2.sh select course,比如更改:./mysql2.sh update score 1 80 jsj001,001,乙個小測試,喜歡大家多多嘗試一下
shell 學習筆記
shell 是解釋型語言 移植性強課對應不同的直譯器 bin sh f 變數開頭以乙個字母或者下劃線,後接任意長度的字母 數字或者下劃線。命令 commod op 引數 輸入 輸出 重定向管道 echo printf 大口如小口出。特殊檔案 dev null bit bucket 刪除所有輸入的資料...
shell學習筆記
shell指令碼在linux下開發經常需要用到,shell的指令碼可以幫助使用者自動化地和作業系統進行互動,起到了提高效率的作用。學習一門語言,通常需要實戰演練編碼除錯,shell該如何除錯呢?使用bash x命令即可。vi demo.sh敲入 bin bash echo 1 echo date y...
shell學習筆記
1 shell檔案的第一行都必須是 bin sh 也可以有其他路徑,這裡我們只以這個為例 2 定義變數 a value 中間不能有空格 呼叫方法 echo a 3 shell常用的條件測試 備註 方括號兩側必須要有空格,f lt等兩側也必須要有空格 a f file 判斷 file是否是乙個檔案 b...