首頁 > 資料庫 > mysql教程 > 在oracle:form中使用动态SQL

在oracle:form中使用动态SQL

WBOY
發布: 2016-06-07 14:54:52
原創
1352 人瀏覽過

在oracle FORM 由于和DB中的 不一样所以需要一个特定的API exec_sql系列 ,常常用来输出报表的东东 FORM dynamic SQL 动态SQL PL/SQL declare l_sql varchar2(2000); v_ConnID EXEC_SQL.CONNTYPE; v_Cursor EXEC_SQL.CURSTYPE; v_Ignore PLS_INTEGER;begin --

在oracle FORM 由于和DB中的 不一样所以需要一个特定的API exec_sql系列 ,常常用来输出报表的东东 FORM dynamic SQL 动态SQL PL/SQL
declare
  l_sql    varchar2(2000);
  v_ConnID EXEC_SQL.CONNTYPE;
  v_Cursor EXEC_SQL.CURSTYPE;
  v_Ignore PLS_INTEGER;
begin
  --... 你进行相应的 动态SQL 拼接的地方
  --写内容
  --执行查询 并且关闭相应的 连接资源
  v_ConnID := EXEC_SQL.DEFAULT_CONNECTION;
  v_Cursor := EXEC_SQL.OPEN_CURSOR(v_ConnID);
  -- 使用 API    EXEC_SQL.DEFINE_COLUMN( v_ConnID,v_Cursor, v_Count, v_Value, 100);  进行返回值的定义
  EXEC_SQL.PARSE(v_ConnID, v_Cursor, l_sql, EXEC_SQL.V7);
  v_ignore := EXEC_SQL.EXECUTE(v_ConnID, v_Cursor);
  --写入数据 使用 从游标抓取数据 然后 获取值的API
  --WHILE (EXEC_SQL.FETCH_ROWS(v_ConnID, v_Cursor  ) > 0 ) LOOP      
  --     EXEC_SQL.COLUMN_VALUE(v_ConnID, v_Cursor, v_Count, v_Value); 
  --END LOOP;  
  EXEC_SQL.CLOSE_CURSOR(v_ConnID, v_Cursor);
  EXEC_SQL.CLOSE_CONNECTION(v_ConnID);
end;
登入後複製
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板