全部博文(136)
分类: Oracle
2008-07-30 18:36:07
DECLARE
-- 定义记录类型:学生(姓名、学号) TYPE RECORD_STUDENT IS RECORD( NAME VARCHAR2(20), score NUMBER(5,2) DEFAULT 0 ); -- 定义 VARRAY 数组:元素为学生 TYPE TVAR_STUDENTS IS VARRAY(2) OF RECORD_STUDENT; rec_student RECORD_STUDENT; var_students TVAR_STUDENTS := TVAR_STUDENTS(rec_student, rec_student); BEGIN -- score 赋值 var_students(1).score := 1; -- 输出 score 的值 dbms_output.put_line(var_students(1).score); -- name 赋值 var_students(1).NAME := 'yuecchaotian'; -- 再次输出 score 的值 dbms_output.put_line(var_students(1).score); END; |
SQL> select * from v$version;
BANNER
------------------------------------------------------ Oracle8i Release 8.1.6.0.0 - Production PL/SQL Release 8.1.6.0.0 - Production CORE 8.1.6.0.0 Production TNS for 32-bit Windows: Version 8.1.6.0.0 - Production NLSRTL Version 3.4.1.0.0 - Production SQL> set serveroutput on
SQL> DECLARE
2 -- 定义记录类型:学生(姓名、学号) 3 TYPE RECORD_STUDENT IS RECORD( 4 NAME VARCHAR2(20), 5 score NUMBER(5,2) DEFAULT 0 6 ); 7 -- 定义 VARRAY 数组:元素为学生 8 TYPE TVAR_STUDENTS IS VARRAY(2) OF RECORD_STUDENT; 9 10 rec_student RECORD_STUDENT; 11 var_students TVAR_STUDENTS 12 := TVAR_STUDENTS(rec_student, rec_student); 13 BEGIN 14 -- score 赋值 15 var_students(1).score := 1; 16 -- 输出 score 的值:正确 17 dbms_output.put_line(var_students(1).score); 18 -- name 赋值 19 var_students(1).NAME := 'yuecchaotian'; 20 -- 再次输出 score 的值:正确 21 dbms_output.put_line(var_students(1).score); 22 END; 23 / 1 1 PL/SQL 过程已成功完成。 |
SQL> select * from v$version;
BANNER
---------------------------------------------------------- Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production PL/SQL Release 8.1.7.0.0 - Production CORE 8.1.7.0.0 Production TNS for 32-bit Windows: Version 8.1.7.0.0 - Production NLSRTL Version 3.4.1.0.0 - Production SQL> set serveroutput on
SQL> DECLARE
2 -- 定义记录类型:学生(姓名、学号) 3 TYPE RECORD_STUDENT IS RECORD( 4 NAME VARCHAR2(20), 5 score NUMBER(5,2) DEFAULT 0 6 ); 7 -- 定义 VARRAY 数组:元素为学生 8 TYPE TVAR_STUDENTS IS VARRAY(2) OF RECORD_STUDENT; 9 10 rec_student RECORD_STUDENT; 11 var_students TVAR_STUDENTS 12 := TVAR_STUDENTS(rec_student, rec_student); 13 BEGIN 14 -- score 赋值 15 var_students(1).score := 1; 16 -- 输出 score 的值:正确 17 dbms_output.put_line(var_students(1).score); 18 -- name 赋值 19 var_students(1).NAME := 'yuecchaotian'; 20 -- 再次输出 score 的值:正确 21 dbms_output.put_line(var_students(1).score); 22 END; 23 / 1 1 PL/SQL 过程已成功完成。 |
SQL> select * from v$version;
BANNER
------------------------------------------------------ Oracle8i Release 8.1.6.0.0 - Production PL/SQL Release 8.1.6.0.0 - Production CORE 8.1.6.0.0 Production TNS for 32-bit Windows: Version 8.1.6.0.0 - Production NLSRTL Version 3.4.1.0.0 - Production SQL> set serveroutput on
SQL> DECLARE
2 -- 定义记录类型:学生(姓名、学号) 3 TYPE RECORD_STUDENT IS RECORD( 4 NAME VARCHAR2(20), 5 score NUMBER(5,2) DEFAULT 0 6 ); 7 -- 定义 VARRAY 数组:元素为学生 8 TYPE TVAR_STUDENTS IS VARRAY(2) OF RECORD_STUDENT; 9 10 rec_student RECORD_STUDENT; 11 var_students TVAR_STUDENTS 12 := TVAR_STUDENTS(rec_student, rec_student); 13 BEGIN 14 -- score 赋值 15 var_students(2).score := 1; 16 -- 输出 score 的值:正确 17 dbms_output.put_line(var_students(2).score); 18 -- name 赋值 19 var_students(2).NAME := 'yuecchaotian'; 20 -- 再次输出 score 的值:错误 21 dbms_output.put_line(var_students(2).score); 22 END; 23 / 1 0 PL/SQL 过程已成功完成。 |
SQL> select * from v$version;
BANNER
---------------------------------------------------------- Oracle8i Enterprise Edition Release 8.1.7.0.0 - Production PL/SQL Release 8.1.7.0.0 - Production CORE 8.1.7.0.0 Production TNS for 32-bit Windows: Version 8.1.7.0.0 - Production NLSRTL Version 3.4.1.0.0 - Production SQL> set serveroutput on
SQL> DECLARE
2 -- 定义记录类型:学生(姓名、学号) 3 TYPE RECORD_STUDENT IS RECORD( 4 NAME VARCHAR2(20), 5 score NUMBER(5,2) DEFAULT 0 6 ); 7 -- 定义 VARRAY 数组:元素为学生 8 TYPE TVAR_STUDENTS IS VARRAY(2) OF RECORD_STUDENT; 9 10 rec_student RECORD_STUDENT; 11 var_students TVAR_STUDENTS 12 := TVAR_STUDENTS(rec_student, rec_student); 13 BEGIN 14 -- score 赋值 15 var_students(2).score := 1; 16 -- 输出 score 的值:正确 17 dbms_output.put_line(var_students(2).score); 18 -- name 赋值 19 var_students(2).NAME := 'yuecchaotian'; 20 -- 再次输出 score 的值:正确 21 dbms_output.put_line(var_students(2).score); 22 END; 23 / 1 1 PL/SQL 过程已成功完成。 |
SQL> DECLARE
2 -- 定义记录类型:学生(姓名、学号) 3 TYPE RECORD_STUDENT IS RECORD( 4 NAME VARCHAR2(20), 5 score NUMBER(5,2) --DEFAULT 0 6 ); 7 -- 定义 VARRAY 数组:元素为学生 8 TYPE TVAR_STUDENTS IS VARRAY(2) OF RECORD_STUDENT; 9 10 rec_student RECORD_STUDENT; 11 var_students TVAR_STUDENTS 12 := TVAR_STUDENTS(rec_student, rec_student); 13 BEGIN 14 -- score 赋值 15 var_students(2).score := 1; 16 -- 输出 score 的值:正确 17 dbms_output.put_line(var_students(2).score); 18 -- name 赋值 19 var_students(2).NAME := 'yuechaotian'; 20 -- 再次输出 score 的值:正确 21 dbms_output.put_line(var_students(2).score); 22 END; 23 / 1 1 PL/SQL 过程已成功完成。 |
SQL> DECLARE
2 -- 定义记录类型:学生(姓名、学号) 3 TYPE RECORD_STUDENT IS RECORD( 4 NAME VARCHAR2(20), 5 score NUMBER(5,2) DEFAULT 0 6 ); 7 -- 定义 VARRAY 数组:元素为学生 8 TYPE TVAR_STUDENTS IS TABLE OF RECORD_STUDENT; 9 10 rec_student RECORD_STUDENT; 11 var_students TVAR_STUDENTS 12 := TVAR_STUDENTS(rec_student, rec_student); 13 BEGIN 14 -- score 赋值 15 var_students(2).score := 1; 16 -- 输出 score 的值:正确 17 dbms_output.put_line(var_students(2).score); 18 -- name 赋值 19 var_students(2).NAME := 'yuechaotian'; 20 -- 再次输出 score 的值:错误 21 dbms_output.put_line(var_students(2).score); 22 END; 23 / 1 0 PL/SQL 过程已成功完成。 |
SQL> DECLARE
2 -- 定义记录类型:学生(姓名、学号)
3 TYPE RECORD_STUDENT IS RECORD(
4 NAME VARCHAR2(20),
5 score NUMBER(5,2) DEFAULT 0
6 );
7 -- 定义 VARRAY 数组:元素为学生
8 TYPE TVAR_STUDENTS IS VARRAY(3) OF RECORD_STUDENT;
9
10 rec_student RECORD_STUDENT;
11 var_students TVAR_STUDENTS
12 := TVAR_STUDENTS(rec_student, rec_student, rec_student);
13 BEGIN
14 -- score 赋值
15 var_students(2).score := 1;
16 -- 输出 score 的值:正确
17 dbms_output.put_line(var_students(2).score);
18 -- name 赋值
19 var_students(2).NAME := 'yuecchaotian';
20 -- 再次输出 score 的值:正确
21 dbms_output.put_line(var_students(2).score);
22 END;
23 /
1
1PL/SQL 过程已成功完成。
SQL> DECLARE
2 -- 定义记录类型:学生(姓名、学号)
3 TYPE RECORD_STUDENT IS RECORD(
4 NAME VARCHAR2(20),
5 score NUMBER(5,2) DEFAULT 0
6 );
7 -- 定义 VARRAY 数组:元素为学生
8 TYPE TVAR_STUDENTS IS VARRAY(2) OF RECORD_STUDENT;
9
10 rec_student RECORD_STUDENT;
11 var_students TVAR_STUDENTS
12 := TVAR_STUDENTS(rec_student, rec_student);
13 BEGIN
14 rec_student.score := 1;
15 rec_student.name := 'yuechaotian';
16
17 var_students(2) := rec_student;
18
19 dbms_output.put_line(var_students(2).name);
20 dbms_output.put_line(var_students(2).score);
21 END;
22 /
yuechaotian
1PL/SQL 过程已成功完成。