学习笔记(shell操作mysql增删改查)

昨天学习了如何用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,一个小测试,喜欢大家多多尝试一下
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值