爱问知识人 爱问教育 医院库

什么是Oracle记录变量?

首页

什么是Oracle记录变量?

什么是Oracle记录变量?

提交回答

全部答案

    2018-03-22 07:07:11
  •   定义一个记录变量使用TYPE命令和%ROWTYPE,关于%ROWsTYPE的更多信息请参阅相关资料。记录变量用于从游标中提取数据行,当游标选择很多列的时候,那么使用记录比为每列声明一个变量要方便得多。当在表上使用%ROWTYPE并将从游标中取出的值放入记录中时,如果要选择表中所有列,那么在SELECT子句中使用*比将所有列名列出来要安全得多。
       例: SET SERVERIUTPUT ON DECLARE R_emp EMP%ROWTYPE; CURSOR c_emp IS SELECT * FROM emp; BEGIN OPEN c_emp; LOOP FETCH c_emp INTO r_emp; EXIT WHEN c_emp%NOTFOUND; DBMS_OUT。
      PUT。PUT_LINE('Salary of Employee'||r_emp。ename||'is'|| r_emp。salary); END LOOP; CLOSE c_emp; END; %ROWTYPE也可以用游标名来定义,这样的话就必须要首先声明游标: SET SERVERIUTPUT ON DECLARE CURSOR c_emp IS SELECT ename,salary FROM emp; R_emp c_emp%ROWTYPE; BEGIN OPEN c_emp; LOOP FETCH c_emp INTO r_emp; EXIT WHEN c_emp%NOTFOUND; DBMS_OUT。
      PUT。PUT_LINE('Salary of Employee'||r_emp。ename||'is'|| r_emp。salary); END LOOP; CLOSE c_emp; END; 带参数的游标 与存储过程和函数相似,可以将参数传递给游标并在查询中使用。
      这对于处理在某种条件下打开游标的情况非常有用。它的语法如下: CURSOR cursor_name[(parameter[,parameter],。。。)] IS select_statement; 定义参数的语法如下: Parameter_name [IN] data_type[{:=|DEFAULT} value] 与存储过程不同的是,游标只能接受传递的值,而不能返回值。
      参数只定义数据类型,没有大小。 另外可以给参数设定一个缺省值,当没有参数值传递给游标时,就使用缺省值。游标中定义的参数只是一个占位符,在别处引用该参数不一定可靠。 在打开游标时给参数赋值,语法如下: OPEN cursor_name[value[,value]。
      。。。]; 参数值可以是文字或变量。 例: DECALRE CURSOR c_dept IS SELECT * FROM dept ORDER BY deptno; CURSOR c_emp (p_dept VARACHAR2) IS SELECT ename,salary FROM emp WHERE deptno=p_dept ORDER BY ename r_dept DEPT%ROWTYPE; v_ename EMP。
      ENAME%TYPE; v_salary EMP。SALARY%TYPE; v_tot_salary EMP。SALARY%TYPE; BEGIN OPEN c_dept; LOOP FETCH c_dept INTO r_dept; EXIT WHEN c_dept%NOTFOUND; DBMS_OUTPUT。
      PUT_LINE('Department:'|| r_dept。deptno||'-'||r_dept。dname); v_tot_salary:=0; OPEN c_emp(r_dept。deptno); LOOP FETCH c_emp INTO v_ename,v_salary; EXIT WHEN c_emp%NOTFOUND; DBMS_OUTPUT。
      PUT_LINE('Name:'|| v_ename||' salary:'||v_salary); v_tot_salary:=v_tot_salary+v_salary; END LOOP; CLOSE c_emp; DBMS_OUTPUT。
      PUT_LINE('Toltal Salary for dept:'|| v_tot_salary); END LOOP; CLOSE c_dept; END; 游标FOR循环。

    薛***

    2018-03-22 07:07:11

类似问题

换一换
  • 系统软件 相关知识

  • 电脑网络技术
  • 电脑网络

相关推荐

正在加载...
最新资料 推荐信息 热门专题 热点推荐
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200

热点检索

  • 1-20
  • 21-40
  • 41-60
  • 61-80
  • 81-100
  • 101-120
  • 121-140
  • 141-160
  • 161-180
  • 181-200
返回
顶部
帮助 意见
反馈

确定举报此问题

举报原因(必选):