- 论坛徽章:
- 0
|
本帖最后由 chao1999 于 2013-02-03 21:05 编辑
自己摸索着写了一个shell脚本来读取数据,然后插入数据并带循环的脚本,其内容如下:[- #!/bin/bash
- #USER=root #设定用户名
- #PASSWORD="root" #设定数据库的用户密码
- #DB=smsserver
- # 从数据库读取短信内容
- ss=$(mysql -uroot -proot -D smsserver -e "select content_sms from default_content where id=1;")
- echo $ss
- #从数据库读取要发送的手机号码个数
- count=$(mysql -uroot -proot -D smsserver -e "select count(*) from sender;")
- echo $count
- for i in $count
- do
- # 从数据库读取第i个电话号码,写入需要发送的短信内容
- sss=$(mysql -uroot -proot -D smsserver -e "select sender_number from sender where id=$i;")
- echo $sss
- mysql -uroot -proot -D smsserver -e "insert into smsserver_out (type,recipient,text,encoding,create_date) values ('O','$sss','$ss','U',now());"
- echo $i
- done
复制代码 执行此shell脚本文件后,输出结果如下:
- content_sms 测试信息!
- count(*) 2
- ERROR 1111 (HY000) at line 1: Invalid use of group function
- count(*)
- 2
复制代码 问题如下:
1、可能是语法不对shell读取变量总是有问题,结果总是不对。
2、echo打印时总是将字段的名字一起输出……
3、id=$变量系统总是不能正确读取开始的时候数据库用户名密码等都是用变量赋值,后来变量一直出问题就在直接写入,
但是搞了一整天也还是没有搞定,真是郁闷!
请高手们出手帮忙啊!!
|
|