oracle的sql脚本中可以使用传入参数

 
tableName.sql
=============
accept TableName prompt 'Table Name' 
prompt &TableName 
=============
 
调用的时候可以
sqlplus uid/pwd@ora @tableName.sql
然后再输入参数
 
问题:
怎么直接把参数一起传进去呢?
比如类似这样
sqlplus uid/pwd@ora @tableName.sql &TableName=table11

解决方案 »

  1.   

    sqlplus uid/pwd@ora @tableName.sql:table11 试试看,以前用过,但不记得了
      

  2.   

    sqlplus uid/pwd@ora @tableName.sql:table11
    ==========
    无法打开文件sqlplus uid/pwd@ora @tableName.sql:table11
    ==========
    仍然要求输入变量
      

  3.   

    操作系统命令中的参数传到SQLPLUS中?
      

  4.   

     kinglht(爱新觉罗至尊宝) ()发表于:2007-09-30 10:32:155楼 得分:0 
    直接跟空格看看。 
    ==============
    试过了,还是要求输入参数
    heyixiang(子豚の愛人) ()发表于:2007-09-30 11:13:426楼 得分:0 
    操作系统命令中的参数传到SQLPLUS中? 
    ==============
    是的,比如在bat文件中写
    sqlplus uid/pwd@ora @tableName.sql table11 
    直接执行
      

  5.   

    那你直接分多行写bat文件就可以了呀,Such assqlplus uid/pwd@sid
    variable i number;
    i := 1;
    select * from dual where :i = 1;
      

  6.   

    TO heyixiang多谢你的回答,但和我想要的效果还有一些差距
    写在bat固然可以的,但还是比较希望sql脚本都存在.sql文件里
    尤其这里一会儿在windows上跑,一会儿在aix上跑的