/Database/Oracle/?????????????????.sql
# · SQL · 89 lines · 38 code · 18 blank · 33 comment · 0 complexity · cf6a050dcf0e6b3a11c51fd60c82eb9d MD5 · raw file
- --?????http://www.cnblogs.com/huyong/archive/2011/05/10/2041951.html#_Toc9878
-
- --??????
-
- /*
- ??????????:
-
- TYPE record_name IS RECORD(
- v1 data_type1 [NOT NULL] [:= default_value ],
- v2 data_type2 [NOT NULL] [:= default_value ],
- ......
- vn data_typen [NOT NULL] [:= default_value ] );
- */
-
- --?4 ?
-
- DECLARE
- TYPE test_rec IS RECORD(
- Name VARCHAR2(30) NOT NULL := '??',
- Info VARCHAR2(100));
- rec_book test_rec;
- BEGIN
- rec_book.Name :='??';
- rec_book.Info :='?PL/SQL??;';
- DBMS_OUTPUT.PUT_LINE(rec_book.Name||' ' ||rec_book.Info);
- END;
-
-
- --??? SELECT???????????,????????????????????????
-
- --?5 ?
-
- DECLARE
- --???hr.employees????????????????
- TYPE RECORD_TYPE_EMPLOYEES IS RECORD(
- f_name hr.employees.first_name%TYPE,
- h_date hr.employees.hire_date%TYPE,
- j_id hr.employees.job_id%TYPE);
- --????????????????
- v_emp_record RECORD_TYPE_EMPLOYEES;
-
- BEGIN
- SELECT first_name, hire_date, job_id INTO v_emp_record
- FROM employees
- WHERE employee_id = &emp_id;
-
- DBMS_OUTPUT.PUT_LINE('?????'||v_emp_record.f_name
- ||' ?????'||v_emp_record.h_date
- ||' ???'||v_emp_record.j_id);
- END;
-
- /*
- ????????????????????????????????????????????
- */
-
-
- --??????
-
- /*
- ?????????????????????????????????????????????????PL/SQL?????????VARRAY?
-
- ??VARRY?????????
- TYPE varray_name IS VARRAY(size) OF element_type [NOT NULL];
-
- varray_name?VARRAY????????size?????????????????????????????element_type?????????????????NOT NULL???????VARRAY??????????????????????????????
- */
-
- --?6 ?
-
- DECLARE
- --????????5?VARCHAR(25)???????VARRAY????
- TYPE reg_varray_type IS VARRAY(5) OF VARCHAR(25);
- --?????VARRAY???????
- v_reg_varray REG_VARRAY_TYPE;
-
- BEGIN
- --???????????
- v_reg_varray := reg_varray_type
- ('??', '??', '??', '??', '??');
-
- DBMS_OUTPUT.PUT_LINE('?????'||v_reg_varray(1)||'?'
- ||v_reg_varray(2)||'?'
- ||v_reg_varray(3)||'?'
- ||v_reg_varray(4));
- DBMS_OUTPUT.PUT_LINE('????NULL??5??????'||v_reg_varray(5));
- --??????????????????????
- v_reg_varray(5) := '??';
- DBMS_OUTPUT.PUT_LINE('?5??????'||v_reg_varray(5));
- END;