我有一个包含以下内容的文件:
domainname.com data2 data3
domainname2.com data5 data6
我正在尝试编写一个bash脚本来读取文件并将其放入数据库中。 但是有2个表必须填写。第一个现在填充,第二个需要第一个表中的ID数据填充第二个。我已经尝试了几个小时来运行第二部分(第一个表现在已经填满),但不断出现错误。 到目前为止,这是我的脚本:
#!/bin/bash
inputfile="mailertable4a.txt"
cat $inputfile | while read domain fwip user_id; do
## echo "INSERT IGNORE INTO user_addresses (address,enabled,user_id,address_type,load_balance) VALUES ('$domain', '1', '$user_id', '1', '0');"
counter=$("echo SELECT id FROM user_addresses WHERE user_addresses.address = '$domain';")
echo "INSERT IGNORE INTO mail_hosts (address,enabled,port,useraddress_id) VALUES ('$fwip', '1', '25', '$counter');"
done | mysql -uroot -pmypasswd ******;
所以第一个表填充了##行。在下一行中,我尝试从该表中获取id号并在第3行中使用它。 但是我得到了错误:
第1行的错误1064(42000):您的SQL语法出错;查看与您的MySQL服务器版本对应的手册,以便在'domainname.com'附近使用正确的语法;')'在第1行
我尝试了几件事,但不断出错。