【发布时间】:2023-01-18 16:31:56
【问题描述】:
如何使用 bash shell 脚本调用 sql 查询。我试过下面但似乎有一些语法错误:
#!/bin/sh
LogDir='/albt/dev/test1/test2/logs' # log file
USER='test' #Enter Oracle DB User name
PASSWORD='test' #Enter Oracle DB Password
SID='test' #Enter SID
sqlplus -s << EOF > ${LogDir}/sql.log
${DB_USER_NAME}/${DB_PASSWORD}@${DB_SID}
SELECT count(1) FROM dual; # SQL script here to get executed
EOF
var=$(SELECT count(1) FROM dual)
我收到了 - 意外的令牌错误
#!/bin/sh
user="test"
pass="test"
var="$1"
sqlplus -S $user/$pass <<EOF
SELECT * FROM tableName WHERE username=$var;
exit;
EOF
我得到 - sqlplus:找不到命令 - 当我运行上面的脚本时
谁能指导我?
【问题讨论】:
-
“似乎有一些语法错误”是什么意思?确切的错误是什么?另外,您的最后一行似乎不正确。
-
是的,它抛出语法错误
-
请删除狂欢标签。看起来 bash 不会参与您的脚本。
标签: linux bash shell unix scripting