oracle数据库中sql%notfound的用法
2017-01-03 22:33
211 查看
SQL%NOTFOUND 是一个布尔值。与最近的sql语句(update,insert,delete,select)发生交互,当最近的一条sql语句没有涉及任何行的时候,则返回true。否则返回false。这样的语句在实际应用中,是非常有用的。例如要update一行数据时,如果没有找到,就可以作相应操作。如:
begin
update table_name set salary = 10000 where emp_id = 10;
if sql%notfound then
insert into table_name (id,name,salary)values("","","") ;
end if;
end;
当update emp_id为10的这行记录,如果update影响条数为0,则插入一条数据。
SQL%FOUND 的用法与sql%notfound用法相反,也是与最近的sql语句发生交互,如果影响行数大于0条,则为true
否则为false。
SQL%ROWCOUNT在dml语句执行前是null,执行后,对于select into语句,执行成功则值为1,不成功则值为0。
begin
update table_name set salary = 10000 where emp_id = 10;
if sql%notfound then
insert into table_name (id,name,salary)values("","","") ;
end if;
end;
当update emp_id为10的这行记录,如果update影响条数为0,则插入一条数据。
SQL%FOUND 的用法与sql%notfound用法相反,也是与最近的sql语句发生交互,如果影响行数大于0条,则为true
否则为false。
SQL%ROWCOUNT在dml语句执行前是null,执行后,对于select into语句,执行成功则值为1,不成功则值为0。
相关文章推荐
- oracle数据库中sql%notfound的用法详解
- oracle数据库 sql%found,sql%notfound,sql%rowcount
- Oracle数据库 sql%found,sql%notfound,sql%rowcount
- SQL%NOTFOUND的用法
- Oracle数据库 sql%found,sql%notfound,sql%rowcount
- 游标属性SQL%FOUND,SQL%NOTFOUND,SQL%ROWCOUNT
- Oracle数据库中的varchar,varchar2,nvarchar,nvarchar2区别及用法
- 游标属性SQL%FOUND, SQL%NOTFOUND, SQL%ROWCOUNT, SQL%ISOPEN
- 往Oracle数据库中插入日期型数据(to_date的用法)
- SQL%FOUND,SQL%NOTFOUND,SQL%ROWCOUNT
- 游标属性SQL%FOUND,SQL%NOTFOUND,SQL%ROWCOUNT [转载]
- Oracle数据库中序列用法讲解
- oracle数据库定时任务dbms_job的用法详解
- java 查询oracle数据库所有表DatabaseMetaData的用法
- Oracle数据库中序列用法讲解
- 往Oracle数据库中插入日期型数据(to_date的用法)
- Oracle数据库合并行记录,WMSYS.WM_CONCAT 函數的用法
- Oracle数据库中to_char()函数和to_date()函数的用法
- oracle中的sql%rowcount,sql%found、sql%notfound、sql%rowcount和sql%isopen
- 讲解Oracle数据库中的数据字典及相关SQL查询用法