【Oracle】实验五 PL_SQL编程
    		       		warning:
    		            这篇文章距离上次修改已过422天,其中的内容可能已经有所变动。
    		        
        		                
                实现一个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控制结构来处理查询结果的基本方法。
评论已关闭