注册 登录
编程论坛 Oracle论坛

一道oracle的问题

维亚碎 发布于 2011-12-31 23:39, 1089 次点击
写一个存储过程,用于创建一个名为Test的表,该表只有一个名字为coll的列,数据类型为整型。创建一个循环结构,插入数值到表中,直到有100条记录。用变量记录已存储到表中的记录数,当变量的值达到100时,使用BREAK语句退出循环
2 回复
#2
zhipi2012-01-03 22:19
程序代码:

CREATE OR REPLACE PROCEDURE proc_test
IS

v_strsql VARCHAR2(1000);

BEGIN
  v_strsql := 'create table Test(coll NUMBER)';
  EXECUTE IMMEDIATE v_strsql;

  FOR i IN 1..100 LOOP
    v_strsql := 'insert into Test values(' || i || ')';
    EXECUTE IMMEDIATE v_strsql;
  END LOOP;
END;


若遇 EXECUTE IMMEDIATE 执行 DDL 语句权限不足的情况,要赋予用户相应权限,
例如创建表的操作,grant create any table to {oracle_user_name};
#3
俊杰45852012-01-14 17:14
(⊙o⊙)…
1