标题: 关于数据库查询中的参数化问题 [打印本页] 作者: suntu 时间: 2005-10-18 08:59 标题: 关于数据库查询中的参数化问题 select * from VENTURE.VW_RESULT_2000010 where (currency_code = '0' ) and tradedate between '20050301' and '20050310' and branch_code='0210'
对以上sql语句要实现参数化该怎么办?
我知道如果where后面只有branch_code='0210'一个条件时可以用
pre = "select * from VENTURE.VW_RESULT_2000010 where branch_code= ";
id =0210;
strQuery = pre & id;
但是现在后面有好几个条件,如果要把20050301,20050310与0210一起都参数化,该怎么办呢?作者: aswoon911 时间: 2005-10-18 10:58
既然可以设一个变量id,为何不试试设多个变量代替其余参数啊?作者: suntu 时间: 2005-10-18 12:54
我也是这么想,但是不知道用什么格式排列才能运行正确。。难道要用&aa&bb&cc这样的格式吗?可是程序怎么知道这些参数的一一对应关系呢?作者: aswoon911 时间: 2005-10-18 13:34
方法多啊,如果你需要参数化的数据不多,意思是说,比如 "id =0210"就用一次或少数次,你就直接写:
sqlstr="select * from VENTURE.VW_RESULT_2000010 where currency_code = '0' ) and tradedate between '" ¶meter1& "' and '"¶meter2& "' and branch_code='"¶meter3& "'";