`

存储过程生成表

阅读更多
/* Formatted on 2007/11/07 11:33 (Formatter Plus v4.8.6) */
CREATE OR REPLACE PROCEDURE p_kalon_create_table (tableno IN VARCHAR2)
IS
   tmpvar      NUMBER;
   createsql   VARCHAR2 (4000);
   flag        NUMBER (1);
   tmpsql      VARCHAR2 (3000);
   tablename   VARCHAR2 (30);
BEGIN
   tablename := UPPER ('kalon_' || SUBSTR (tableno, 1, 6));
   createsql :=
         'create table '
      || tablename
      || '(id number,name varchar2(10)) '
      || 'TABLESPACE TEST_AREA
					PCTUSED    0
					PCTFREE    10
					INITRANS   1
					MAXTRANS   255
					STORAGE    (
					            INITIAL          1M
					            NEXT             1M
					            MINEXTENTS       1
					            MAXEXTENTS       2147483645
					            PCTINCREASE      0
					            BUFFER_POOL      DEFAULT
					           )
					LOGGING 
					NOCOMPRESS 
					NOCACHE
					NOPARALLEL
					NOMONITORING';
   flag := 0;
   tmpsql :=
         'select count(*) from dual '
      || 'where exists(select 1 from user_objects '
      || 'where object_name='''
      || tablename
      --|| 'where object_name=''' || 'upper(' || tablename || ')'''
      || ''')';

   EXECUTE IMMEDIATE tmpsql
                INTO flag;

   COMMIT;

   IF flag = 0
   THEN
      EXECUTE IMMEDIATE createsql;
	  COMMIT;
   END IF;

   --/*下面的这条语句当不存在查询的表时将抛出 NO_DATA_FOUND异常--
   --tmpsql := 'select 1 from dual where exists (select 1 from user_objects where object_name='''
     --        || 'KALON'')';
   --flag := 0;
   --execute immediate tmpsql into flag;
   --if flag <> 1 then
        -- execute immediate createSQL;
    --else
      --DBMS_OUTPUT.put_line ('...exist...');
    --end if;
   
--/*测试脚本,呵呵~~-------------------------------------------------------------------------
 --exec p_kalon_create_table('20070606');

   --create table kalon(idno number);

   --drop table KALON_200706;

   --select * from kalon;

   --select * from user_objects;

   --select 1 from dual where exists (select 1 from user_objects where object_name='KALON_200706');
--/*-----------------------------------------------------------------------------------------
   tmpvar := 0;
EXCEPTION
   WHEN NO_DATA_FOUND
   THEN
      DBMS_OUTPUT.put_line ('...xxx....');
      ROLLBACK;
   WHEN OTHERS
   THEN
      DBMS_OUTPUT.put_line ('....yyy...');
      RAISE;
-- Consider logging the error and then re-raise
END p_kalon_create_table;
/

 

分享到:
评论

相关推荐

    存储过程生成工具存储过程生成工具

    存储过程生成工具则是帮助开发者自动化创建、修改和管理这些过程的软件。这类工具极大地提高了数据库管理和维护的效率,减少了重复代码,并提供了更好的性能优化机会。 存储过程的主要优点包括: 1. **性能提升**:...

    存储过程生成器

    SQL存储过程生成器是一款实用工具,它主要针对SQL Server数据库,旨在简化开发人员在数据库管理中的工作。存储过程是预编译的SQL语句集合,它们封装了特定的数据库操作,如创建、读取、更新和删除(CRUD)数据,以...

    存储过程生成器.zip

    存储过程生成器可以自动化生成复杂的SELECT语句,包括根据条件筛选、分组、排序、联接多个表等操作。 - **Insert语句**:用于向数据库表中插入新的记录。生成器能帮助快速构建INSERT语句,减少手动输入错误的可能性...

    sql存储过程生成器

    SQL存储过程生成器是一款强大的工具,专为那些在编写SQL存储过程时遇到困难的开发者设计。存储过程,作为SQL中的一个重要概念,是一组为了完成特定功能的SQL语句集,预编译后存储在数据库中,可以被多次调用,提高了...

    SQL存储过程生成器源码

    "SQL存储过程生成器源码"是一个实用工具,能够自动化创建数据库的增、删、改、查(CRUD)操作的存储过程,极大地提高了开发效率。 首先,我们来理解一下存储过程的基本概念。存储过程可以包含多种SQL语句,如SELECT...

    存储过程向sql中新建表

    通过存储过程向sql server中插入表 其中表名和列的类型可以由参数确定

    sqlserver存储过程生成器

    SQL Server存储过程生成器是一种工具,它极大地简化了数据库开发者的工作,尤其是对于处理大量表及其关联操作时。这种工具能够自动分析数据库结构,并根据表的定义生成相应的存储过程,节省了手动编写这些复杂脚本的...

    存储过程生成器(快速方便)

    “存储过程生成器”是一种工具,它能够快速方便地根据用户提供的表名自动生成对应的SQL存储过程,包括插入(INSERT)、删除(DELETE)、查询(SELECT)和更新(UPDATE)等操作。这种工具极大地简化了开发流程,避免...

    c#自动生成表与存储过程

    本话题聚焦于“C#自动生成表与存储过程”,这是一个高效开发工具的功能,旨在帮助开发者快速构建数据库结构并生成对应的存储过程,从而提高开发效率。 1. **什么是表与存储过程**: - **表**:在关系型数据库中,...

    存储过程生成器c#源码 既是源码还是一个很好用的编程辅助工具

    此项目提供的“存储过程生成器”是基于C#编写的源码,它是一个实用的编程辅助工具,专为SQL Server 2000数据库设计。下面我们将深入探讨存储过程、C#源码及其在SQL Server 2000中的应用。 存储过程是预编译的SQL...

    codesmith存储过程生成模板

    在存储过程生成模板中,我们可以定义模板来自动创建对应于数据库表的增删改查(CRUD)存储过程。 对于"增"操作,存储过程通常接收新数据作为参数,然后插入到相应的表中。在Codesmith模板中,我们需要指定表名、...

    存储过程生成器.tar

    存储过程生成器Oracle

    MSSQL存储过程生成工具

    《MSSQL存储过程生成工具详解》 在数据库管理领域,SQL Server的存储过程是数据库开发者和管理员不可或缺的工具,它允许我们编写可重用的SQL代码,提高效率,同时增强系统的安全性和性能。本文将深入探讨“MSSQL...

    存储过程代码生成器存储过程代码生成器存储过程代码生成器

    使用存储过程代码生成器,开发者无需手动编写每个存储过程的代码,而是通过输入一些基本信息,如表结构、参数和操作类型,就能自动生成对应的存储过程。 这个工具通常具备以下功能: 1. **分析表结构**:自动读取...

    利用存储过程生成报表

    通过以上分析,我们可以看出利用存储过程生成报表的流程大致包括:定义存储过程、创建临时表、执行查询并将结果插入到临时表中。这种做法不仅可以提高报表生成的效率,还能确保数据的安全性和准确性。同时,存储过程...

    c#存储过程生成工具

    本主题聚焦于一个特定的工具——“C#存储过程生成工具”,这是一款旨在简化数据库存储过程创建和管理的可视化工具。存储过程是预编译的SQL语句集合,它们在数据库中预先定义,可以提高性能、增强安全性,并提供模块...

    存储过程生成器源代码,可自动生成所有存储过程 适合sql server 2000

    在给定的标题“存储过程生成器源代码,可自动生成所有存储过程 适合sql server 2000”中,我们了解到这是一个工具,它能够帮助开发人员快速生成适用于SQL Server 2000的存储过程。这样的工具对于数据库管理员和开发者...

    实体类存储过程生成器

    "实体类存储过程生成器"是一种实用的软件工具,它主要设计用于简化数据库操作,特别是针对大量的数据表。这个工具的核心功能是自动生成实体类和相关的存储过程,从而帮助开发者快速实现数据的增删改查(CRUD)操作。...

Global site tag (gtag.js) - Google Analytics