可以过程中作个循环建立名称有规律的表,如table001,table002,...

解决方案 »

  1.   

    还可以在sql plus中使用批量提交sql的方法。
      

  2.   

    to:  jiezhi(西域浪子)我对第二种方法感兴趣,能详细点吗?一定给分!
      

  3.   

    我觉得不存在批量这个概念,
    createtable.sql
    create table1
    (
     id number(10) not null,
     name varchar2(20)
    )
    /
    create table4
    (
     id number(10) not null,
     name varchar2(20)
    )
    /
    create table3
    (
     id number(10) not null,
     name varchar2(20)
    )
    /
    create table2
    (
     id number(10) not null,
     name varchar2(20)
    )
    /然后在执行此命令文件就可以了,
    我觉得这个能算批量吗?
      

  4.   

    建一个过程,用本地动态SQL创建表,用循环形式。create or replace procedure name_pro()
    begin
    for v_num in 1...n loop
    v_sql:='CREATE TABLE execute_table'||v_num||' (col1 VARCHAR(10))'
    EXECUTE IMMEDIATE v_sql;
    end loop
    end;
      

  5.   

    把你的最终意图说出来,
    在Oracle没有批量建表的概念(包括类似的功能)用存储过程只产生相同或相似的表,没在太大的实用功能(个人意见)
      

  6.   

    数据库需要管理的,每个表也都需要
    beckhambobo(beckham)的方法是高效,不过小心管理员杀了你!
      

  7.   

    在sqlplus下执行下面语句:c:\test.log中有你创建表的代码
    set serveroutput on
    SET TERMOUT OFF
    SET ECHO OFF
    spool c:\test.log
    declare i integer;
    begin 
     
     dbms_output.enable(1000000);
     for i in 1..10 loop
    dbms_output.put_line('create table table'||to_char(i)||';');
      end loop;
    end;
    /
    spool off;
      

  8.   

    调用SQL WorkSheet,把
    create table1
    (
     id number(10) not null,
     name varchar2(20)
    )
    /
    create table4
    (
     id number(10) not null,
     name varchar2(20)
    )
    /
    create table3
    (
     id number(10) not null,
     name varchar2(20)
    )
    /
    create table2
    (
     id number(10) not null,
     name varchar2(20)
    )语句写商并且保存,以后每次可以用SQL WorkSheet直接读取这个SQL文件,
    执行就可以了(不过每次建的都是一样的)
      

  9.   

    基本上都要一个一个的写,只不过是分几次执行而已
    用工具,如powerdesigner
      

  10.   

    用sql脚本写,我这又一个批量编辑的工具,pb写的,也可用pl/sql的sql editor编写。