我正在尝试将用 c-shell 脚本编写的脚本重写为使用 sql plus 命令从 oracle 数据库获取信息,但我用 mysql 替换它,我想用 mysql 语法替换所有 sqlplus 语法。我要求所有 c-shell 大师向我解释这个命令的含义
set SQLPLUS=${ORACLE_HOME}/bin/sqlplus
set REPORT=${MYBD_HOME}/Scripts/report.sql
所以在某处我使用以下命令调用 sql plus 命令
${SQLPLUS} ${MYDBUSER} @ &{REPORT}
我可以说我理解右手值的含义({ORACLE_HOME}/bin/sqlplus)是我的 sqplus 命令所在的路径,因此我需要它来调用命令和 {REPORT=$(MYBD_HOME} /Scripts.report.sql) 是通过调用 sqplus 命令运行的我的 sql 脚本所在的路径是否正确?
我不明白 set 命令将其初始化为什么。SQLPLUS 是一个变量,所以当我尝试将其放入我的 .csh 脚本时,我不必键入路径?
如果是这样,那么在 mysql 数据库上运行此脚本所需要做的只是将 SQLPLUS(可能将其更改为 MYSQL)指向我的 msql exec 正确的路径
set MYSQL=${MYSQL_HOME}/bin/mysql
然后只需调用 mysql 并运行 sql 语句
${MYSQL}${MYDBUSER}@${REPORT}
这是我需要做的 ro tun 相同的 .tsch 脚本以从 mysql 表中获取数据吗?