Oracle游标使用攻略
Sql代码
1.
从游标提取数据
2. 从游标失去一起数据运用FETCH下令。每一次提取数据后,游标都指向结果集的下一起。语法如次:
3. FETCH cursor_name INTO variable[,variable,...]
4. 至于SELECT定义的游标的每一列,FETCH变量列表都应该有一个变量与之相对应,变量的部类也要雷同。
例:
5. SET SERVERIUTPUT ON
6. DECLARE
7. v_ename EMP.ENAME%TYPE;
8. v_salary EMP.SALARY%TYPE;
9. CURSOR c_emp IS SELECT ename,salary from emp;
10. BEGIN
11. OPEN c_emp;
12. FETCH c_emp INTO v_ename,v_salary;
13. DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename ||'is'|| v_salary);
14. FETCH c_emp INTO v_ename,v_salary;
15. DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename ||'is'|| v_salary);
16. FETCH c_emp INTO v_ename,v_salary;
17. DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename ||'is'|| v_salary);
18. CLOSE c_emp;
19. END
20.
21. 这段代码无疑是非曲直常劳驾的,如果有多行回到结果,可以运用循环并用游标属性为终结循环的条件,以这种形式提取数据,程序的可读性和简洁性都极为拔高,下部我们运用循环从新写上头的程序:
22.SET SERVERIUTPUT ON
23.DECLARE
24.v_ename EMP.ENAME%TYPE;
25.v_salary EMP.SALARY%TYPE;
26.CURSOR c_emp IS SELECT ename,salary from emp;
27.BEGIN
28.OPEN c_emp;
29. LOOP
30. FETCH c_emp INTO v_ename,v_salary;
31. EXIT WHEN c_emp%NOTFOUND;
32. DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename ||'is'|| v_salary);
33.END
34.
35.记要变量
36. 定义一个记要变量运用TYPE下令和%ROWTYPE,对于%ROWsTYPE的更多信息请参阅有关文件。
37. 记要变量用来从游标中提取数据行,应游标取舍很多列的时分,那么施用记要比为每列宣言一个变量要便利得多。
38. 当在表上运用%ROWTYPE并将从游标中掏出的值放入记要中时,如其要取舍表中全部列,那么在SELECT子句中应用*比将全部列名列出来要得多。
例:
39.SET SERVERIUTPUT ON
40.DECLARE
41.R_emp EMP%ROWTYPE;
42.CURSOR c_emp IS SELECT * from emp;
43.BEGIN
44.OPEN c_emp;
45. LOOP
46. FETCH c_emp INTO r_emp;
47. EXIT WHEN c_emp%NOTFOUND;
48. DBMS_OUT.PUT.PUT_LINE('Salary of Employee'||r_emp.ename|
相关文档:
oracle表空间操作详解
1
2
3作者: 来源: 更新日期:2006-01-04
5
6
7建立表空间
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
如何解决ORA-00054资源正忙,要求指定NOWAIT?
查阅错误代码指南后有如下提示:
ORA-00054 resource busy and acquire with NOWAIT specified
Cause: The NOWAIT keyword forced a return to the command prompt because a resource was unavailable for a LOCK TABLE or SELECT FOR UPDATE command.
Action: Tr ......
oracle数据库中sql基础
作者:佚名 转贴自:本站原创 浏览次数:21 文章录入:admin
一、关系数据库的一些概念
1、主键的值一般不可以改变
2、外键:指向另一个表或本表的主键或唯一键的字段。外键的值一定要和某一主键相同 ......
Oracle在日期使用上允许极大的灵活性。由于可以在日期字段存储时间和日期,从而有函数可以既引用日期又引用时间。
Oracle 所提供的一些日期函数如下所示。
1. SYSDATE
返回当前的日期和时间。
示例
SELECT sysdate from dual;
SYSDATE
----------
05-3月 -03
2. ADD_MONTHS(d, no_of_month)
当前日期"m"后推"no_o ......