昨天學習了如何用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,sex,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 sex='$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,一個小測驗,喜歡大家多多嘗試一下
uj5u.com熱心網友回復:
就當做是練習一下shell的語法吧uj5u.com熱心網友回復:
你的筆記其實放博客里會有更多的人看。。。uj5u.com熱心網友回復:
噢,我試試,謝謝提醒轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/88002.html
標籤:MySQL
