在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 <style> .CodeEntity .code_pieces ul.piece_anchor{width:25px;position:absolute;top:25px;left:-30px;z-index:1000;} .CodeEntity .code_pieces ul.piece_anchor li{width:25px;background: #efe;margin-bottom:2px;} .CodeEntity .code_pieces ul.piece_anchor li{border-left:3px #40AA63 solid;border-right:3px #efe solid;} .CodeEntity .code_pieces ul.piece_anchor li:hover{border-right:3px #40AA63 solid;border-left:3px #efe solid;} .C本文来源gao@dai!ma.com搞$代^码!网7odeEntity .code_pieces ul.piece_anchor li a{color: #333;padding: 3px 10px;} .CodeEntity .code_pieces .jump_to_code{visibility:hidden;position:relative;} .CodeEntity .code_pieces .code_piece:hover .jump_to_code{visibility:visible;} .CodeEntity .code_pieces .code_piece:hover .jump_to_code a{text-decoration:none;} .CodeEntity .code_pieces h2 i{float:right;font-style:normal;font-weight:normal;} .CodeEntity .code_pieces h2 i a{font-size:9pt;background: #FFFFFF;color:#00A;padding: 2px 5px;text-decoration:none;} </style> <!—ecms
- –> <!—ecms
- $velocityCount
–> <!—ecms
–>
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;