急求!!!如何在Shell里向sql脚本程序传递变量或者参数

phineco 2005-06-21 04:26:55
在Shell程序中调用Sql脚本,希望Sql里的变量由
Shell程序来设置,不知如何操作?
...全文
645 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
phineco 2005-07-03
  • 打赏
  • 举报
回复
问题解决立即结贴
phineco 2005-06-30
  • 打赏
  • 举报
回复
继续寻找解决方法
ckc 2005-06-30
  • 打赏
  • 举报
回复
先写脚本,脚本中用
&1,&2来写变量,比如
insert into a values (&1,'&2')
注意如果是字符类型的参数需要加单引号,如以上&2这样
然后用以下格式调用
sqlplus 用户/密码@连接 @脚本名.sql $你的参数 $你的参数
这样就可以了
踏岸寻柳 2005-06-24
  • 打赏
  • 举报
回复
看来只能把你的SQL脚本内容嵌入到SHELL脚本里面了。

假如不用SHELL脚本的花,你的SQL脚本里面的变量能够从哪儿获取呢?
门吹西风 2005-06-23
  • 打赏
  • 举报
回复
oracle我不知道,sybase里是可以这么用的:

#!/bin/bash

isql -S$1 -U$2 -P$3 << dosomething
sp_who
go
dosomething


用法:

./t.sh <db server name> <db user name> < pass word>

phineco 2005-06-23
  • 打赏
  • 举报
回复
看来我得把问题说详细点,
我写了几个sql脚本,数据库为oracle,
现在需要在shell 脚本里调用sql脚本,想在sql脚本里
使用shell脚本里的变量,请问如何做到这一点。
hjf1010 2005-06-21
  • 打赏
  • 举报
回复
shell 操作informix数据库
先设置informix数据库名 假设DBNAME
#!/bin/ksh
dbaccess $DBNAME <<!
unload to $1.unl select *from $1;
!
上面是一个简单例子,将你调用shell时输入的参数作为sql语句的数据库表名,导出该数据库表数据
sofdev 2005-06-21
  • 打赏
  • 举报
回复
采用环境变量好了

23,120

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧