oracle批量建表

oracle批量建表:

begin 
	declare j int;
	tbname varchar2(50) DEFAULT 'test';
    name varchar2(200);
begin
	for j in 1..8000 LOOP
	    name := 'CREATE TABLE test_'||j||'(id number(20), name varchar2(200), create_time date)';
		execute immediate name;
	end loop;
	commit;
	end;
end;

Mysql批量建表:

create procedure create_sql1()
begin
    declare i int;
    declare cerate_sql varchar(1000);
    set i=1;
    while i<8000 do
    set cerate_sql = concat('CREATE TABLE test.test_', concat(i, '(id decimal(20), name varchar(200), time_my datetime)'));
    set @sql = cerate_sql;
    PREPARE stmt FROM @sql;         -- 预处理动态sql语句
    EXECUTE stmt;                   -- 执行sql语句
    deallocate prepare stmt;        -- 释放prepare
    set i=i+1;
    end while;
    commit;
end;

call create_sql1();
批量导出Oracle数据库中的表语,您可以按照以下步骤进行操作: 1. 首先,确保您具有足够的权限来导出结构。您需要具有`CREATE ANY DIRECTORY`和`SELECT ANY TABLE`的权限。 2. 创一个目录,用于存储导出的SQL文件。您可以使用`CREATE DIRECTORY`语来创目录。例如,您可以使用以下命令在C:\dba目录下创一个目录: ```sql CREATE DIRECTORY export_directory AS 'C:\dba'; ``` 这将在C:\dba目录下创一个名为`export_directory`的目录。 3. 编写一个脚本或使用PL/SQL程序来查询数据库中的结构并将其导出为SQL文件。您可以使用`DBMS_METADATA.GET_DDL`函数来获取的DDL语,并将其写入到SQL文件中。以下是一个示例脚本: ```sql SET SERVEROUTPUT ON; DECLARE v_sql CLOB; v_file UTL_FILE.FILE_TYPE; BEGIN v_file := UTL_FILE.FOPEN('EXPORT_DIRECTORY', 'tables.sql', 'W'); FOR t IN (SELECT table_name FROM all_tables WHERE owner = 'YOUR_USER') LOOP v_sql := DBMS_METADATA.GET_DDL('TABLE', t.table_name, 'YOUR_USER'); UTL_FILE.PUT_LINE(v_file, v_sql); END LOOP; UTL_FILE.FCLOSE(v_file); END; / ``` 请注意,您需要将`YOUR_USER`替换为要导出结构的用户的名称。 4. 运行脚本或执行PL/SQL程序。这将生成一个名为`tables.sql`的文件,其中包含所选用户下所有表语。 5. 最后,在C:\dba目录下查看导出的SQL文件,您将找到包含所有结构的文件。 请注意,这只是一种方法来批量导出Oracle数据库中的表语。根据您的需求,您还可以使用其他方法,如使用数据泵工具(expdp)或第三方工具来实现相同的目标。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值