我想知道是否可以从 sybase 的 isql 实用程序中将参数传递给 SQL 脚本。
例如,我想在文件the_script.sql
中存储一个 select 语句,看起来像
select
col_1,
col_2,
etc
from
table
where
cond1 > $param1 and
cond2 < $param2
然后,使用该文件,我想从 isql 中“执行”它
:r the_script.sql 900 20
$param1
用900 和$param2
20代替期望值。
有没有可能实现我想要的?
查看您的用例,您似乎想要一个存储过程,所以这是我为您写的一个:
现在,在 isql 中,您可以运行它:
问候。
我认为它不能在 isql 中按位置完成。使用 shell 脚本包装器,您可以执行类似的操作
我所知道的唯一允许您这样做的工具是 SQSH。它提供了一种混合了 shell 脚本和 SQL 的语言。因此,您可以让您的 (sqsh) shell 脚本从命令行或文件等读取参数,并将它们传递给与 shell 脚本内联编写的 sql 批处理。 http://www.sqsh.org/