【Oracle】实验五 PL_SQL编程
实现一个PL/SQL程序,该程序创建一个表,插入一些数据,然后查询这个表并打印出结果。
SET SERVEROUTPUT ON;
DECLARE
v_table_name VARCHAR2(30) := 'test_table';
v_column1 VARCHAR2(20) := 'id';
v_column2 VARCHAR2(20) := 'name';
BEGIN
EXECUTE IMMEDIATE 'DROP TABLE ' || v_table_name;
EXECUTE IMMEDIATE 'CREATE TABLE ' || v_table_name || ' (' || v_column1 || ' NUMBER, ' || v_column2 || ' VARCHAR2(50))';
EXECUTE IMMEDIATE 'INSERT INTO ' || v_table_name || ' VALUES (:1, :2)' USING 1, 'Name 1';
EXECUTE IMMEDIATE 'INSERT INTO ' || v_table_name || ' VALUES (:1, :2)' USING 2, 'Name 2';
EXECUTE IMMEDIATE 'INSERT INTO ' || v_table_name || ' VALUES (:1, :2)' USING 3, 'Name 3';
FOR rec IN (SELECT * FROM test_table) LOOP
DBMS_OUTPUT.PUT_LINE('ID: ' || rec.id || ', Name: ' || rec.name);
END LOOP;
END;
/
这段PL/SQL代码首先尝试删除已存在的test_table
表,然后创建一个新表,接着插入三条数据,最后查询这个表并打印出每条记录的ID和名称。这个例子展示了动态SQL执行DDL和DML操作,以及使用PL/SQL控制结构来处理查询结果的基本方法。
评论已关闭