【发布时间】:2011-06-25 16:11:48
【问题描述】:
我们希望在一个过程中填充一个游标,该过程是从表中的 select 语句填充的。
我们创建了一个名为 stored_sql_statments 的表,其中包含 2 列 Created_date 和 Sql_statement。 在该表中,我们将插入一个 select 语句,该语句根据客户的需要从数据库中选择其他数据。 例子: 插入到stored_sql_statments ( Created_date , Sql_statement) values('2/1/2011', 'Select Client_idn , something_neat from cool_table where animal = 'dog' ')
然后在过程中我们有一堆代码来做它需要做的事情,这些代码永远不会改变,但是我们在游标中的选择语句会定期改变。我们总是需要返回 2 个字段,但 select 语句的其余部分会发生变化。
所以现在我们需要用来自表格的选择语句来填充过程中的游标。 如果它只返回 1 行,我们有: 宣布 x varchar2(600); rec1 号(10); rec2 varchar2(15); 开始 立即执行 select Sql_statement into x from stored_sql_statments where created_date = '2/1/2011'; 在rec1、rec2中执行立即x; ...
这可行,但我们不需要它进入 2 个变量,我们需要它进入游标。真正的 select 语句(上面的代码只是我们需要做的一个简单示例)是带回数千条记录,因此我们需要使用游标。
希望这一切都有意义
所以如果有人知道如何做到这一点,将不胜感激。
【问题讨论】: