在oracle8.0.5中:
用dbms_sql来实现
CREATE OR REPLACE PROCEDURE demo(salary IN NUMBER) AS
cursor_name INTEGER;
rows_processed INTEGER;
BEGIN
cursor_name := dbms_sql.open_cursor;
DBMS_SQL.PARSE(cursor_name, 'DELETE FROM emp WHERE sal > :x',
dbms_sql.native);
DBMS_SQL.BIND_VARIABLE(cursor_name, ':x', salary);
rows_processed := dbms_sql.execute(cursor_name);
DBMS_SQL.close_cursor(cursor_name);
EXCEPTION
WHEN OTHERS THEN
DBMS_SQL.CLOSE_CURSOR(cursor_name);
END;
用dbms_sql来实现
CREATE OR REPLACE PROCEDURE demo(salary IN NUMBER) AS
cursor_name INTEGER;
rows_processed INTEGER;
BEGIN
cursor_name := dbms_sql.open_cursor;
DBMS_SQL.PARSE(cursor_name, 'DELETE FROM emp WHERE sal > :x',
dbms_sql.native);
DBMS_SQL.BIND_VARIABLE(cursor_name, ':x', salary);
rows_processed := dbms_sql.execute(cursor_name);
DBMS_SQL.close_cursor(cursor_name);
EXCEPTION
WHEN OTHERS THEN
DBMS_SQL.CLOSE_CURSOR(cursor_name);
END;
解决方案 »
- oracle 9i中无法执行存储过程
- plsql中用select ... into ... from 提示missing keyword的错误
- 关于oracle备份文件的问题
- 请教大神--怎么合并从两个不同的数据库查询的结果
- oracle存储过程变量赋值语法问题
- 用oracle 写一个金额大小写转换的函数
- ORACLE 9i 的DATE 型字段中出现了"2006-12-11 下午 08:04:04"
- 下划线转成字符出错
- 求救啊!!!! 查询结果问题啊
- Pro*C/C++怎么总编译错误,请帮我看看那里错误了
- sequence的值在没有进行select nextval操作时,数据库本身会使它增长吗?
- 如何去掉字符串中的光标(回车符号)
1。定义一字符变量strSql varchar(200);
2。连接字符串strSql:='select * from '||tbl||' where name=''HUA''';
3。执行语句execute immediate strSql;