CREATE OR REPLACE FUNCTION SP_GET_LIST
(
po_cursor out hstype.t_cursor --返回游标
)
RETURN NUMBER
AS
BEGIN
OPEN po_cursor FOR SELECT * FROM TABLE1;
v_sql := 'DELETE FROM TABLE1 WHERE COL = 1';
EXECUTE IMMEDIATE v_sql;
--执行该语句没有报错,数据库删除成功
return 0;END
/
(
po_cursor out hstype.t_cursor --返回游标
)
RETURN NUMBER
AS
BEGIN
OPEN po_cursor FOR SELECT * FROM TABLE1;
v_sql := 'DELETE FROM TABLE1 WHERE COL = 1';
EXECUTE IMMEDIATE v_sql;
--执行该语句没有报错,数据库删除成功
return 0;END
/
不是sql语言是pl/sql语言
EXECUTE IMMEDIATE v_sql;
=>
OPEN po_cursor FOR SELECT * FROM TABLE1
不过我还是不明白你的意思
(
po_cursor out hstype.t_cursor --返回游标
)
RETURN NUMBER
AS
v_sql VARCHAR2(500);
BEGIN
--v_sql := 'OPEN po_cursor FOR SELECT * FROM TABLE1';
--EXECUTE IMMEDIATE v_sql;
--执行上面语句总是报错误的SQL
--但是我用下面的语句就可以
v_sql := 'DELETE FROM TABLE1 WHERE COL = 1';
EXECUTE IMMEDIATE v_sql;
--执行该语句没有报错,数据库删除成功
--return 0;
OPEN po_cursor FOR SELECT * FROM table1;
END
/