PLSQL基础教程:插入数据与条件判断

需积分: 11 0 下载量 51 浏览量 更新于2024-09-04 收藏 16KB DOCX 举报
"PLSQL编程基础,包括声明变量、插入数据、处理异常及条件判断的语法和示例。" 在PLSQL(Procedural Language/Structured Query Language)编程中,它是Oracle数据库支持的一种过程化扩展,用于管理和操作数据库。本摘要将详细解释文档中提及的基础知识点。 ### 1. 声明变量 PLSQL允许我们声明变量来存储数据。在文档中,可以看到变量`V_empId`、`V_empName`和`V_jobId`都是用`DECLARE`关键字声明的,它们的数据类型分别与`employees`表中的`employee_id`、`first_name`和`job_id`列相对应。使用`%TYPE`特性可以确保变量的数据类型与表列保持一致,这样可以减少错误并提高代码可读性。 ```sql Declare V_empId employees.employee_id%type; V_empName employees.first_name%type; V_jobId employees.job_id%type; ``` ### 2. 插入数据与返回值处理 在PLSQL块中,我们可以执行SQL语句,如插入数据。文档中的例子展示了如何插入一条新的员工记录,并使用`RETURNING`子句捕获插入后生成的`employee_id`、`last_name`和`job_id`。这些值被装载到已声明的变量中,然后使用`DBMS_OUTPUT.PUT_LINE`打印出来。 ```sql BEGIN insert into employees(employee_id, first_name, job_id, location_id) values(600, 'changsha', 200, 1500) returning employee_id, last_name, job_id into V_empId, V_empName, V_jobId; dbms_output.put_line(V_empId || ' ' || last_name || ' ' || job_id); END; ``` ### 3. 查询数据与处理异常 在PLSQL中,我们可以执行查询来获取数据。示例中,使用`SELECT INTO`语句从`employees`表中选取数据,将所有列赋值给`v_emp`这个记录类型的变量。如果查询无结果,会抛出`NO_DATA_FOUND`异常,通过`EXCEPTION`部分捕获并处理这个异常。 ```sql DECLARE v_emp employees%rowtype; BEGIN select * into v_emp from employees where employee_id = '&input_empId'; dbms_output.put_line(v_emp.first_name); EXCEPTION WHEN NO_DATA_FOUND THEN dbms_output.put_line('该员工未找到'); END; ``` ### 4. 条件判断 PLSQL提供了两种条件判断结构:`IF-THEN-ELSIF-ELSE`和`CASE`表达式。 - IF-THEN-ELSIF-ELSE:在示例中,根据变量`v_lemp`的值进行判断,如果大于37则输出“速度隔离”,否则输出“回家遣返”。 ```sql DECLARE v_lemp number := '&input_lemp'; BEGIN if v_lemp > 37 then dbms_output.put_line('速度隔离'); else dbms_output.put_line('回家遣返'); end if; END; ``` - CASE:`CASE`表达式用于更复杂的条件判断。在示例中,根据`v_score`的值,将结果赋值给`v_result`变量,然后输出相应的评价。 ```sql DECLARE v_score number := '&input_score'; v_result varchar2(32); BEGIN v_result := CASE WHEN v_score > 90 AND v_score < 100 THEN '成绩优秀' WHEN v_score > 80 AND v_score < 90 THEN '成绩良好' -- 其他情况可以根据需要添加 END; dbms_output.put_line(v_result); END; ``` 以上就是PLSQL编程的基础知识点,包括声明变量、插入数据、查询数据、处理异常以及条件判断。掌握这些基础概念,对于编写和理解PLSQL程序至关重要。