IQ中如何向sql脚本文件中传递参数

3797阅读 0评论2012-08-15 lion_sybiq_127
分类:Sybase

    在编写sql语句脚本时,可能需要向其传递参数以实现脚本文件的可复用行。下面我们结合IQ 15的demo数据库和一个例子加以说明:
 
    1. 构建demo数据库
       执行$IQDIR15/demo/mkiqdemo.sh 即可以创建demo数据库。
 
    2. 编写示例sql脚本test_params.sql:
--test_params.sql
PARAMETERS product_name, product_unitPrice ;
SELECT *
FROM Products
WHERE Name = '{product_name}'
 and  UnitPrice >= {product_unitPrice} ;
 
    3. 执行脚本传递参数:

dbisql -c "uid=DBA;pwd=sql" -onerror exit -nogui READ test_params.sql ['Tee Shirt'] [9.0]
 
 
    说明:为了实现传递参数需要两步:
    (1)在sql脚本中实用PARAMETERS语句定义参数,在脚本的sql语句中使用{parametername}的方式引用。
     (2) 在执行脚本文件时使用dbisql加上READ语句传递参数值,参数值要用[]扩起来。
上一篇:IQ数据库区分大小写的相关说明和示例
下一篇:IQ 15 下如何为一个dbspace扩空间