以前经常会遇到批量上传或修改数据到自建表的需求,所以在想是否可以做一个动态的程序,所有的自建表都可以用这个动态程序来维护. 于是就打算试着写动态的程序. 程序的要求:动态显示自建表ALV 动态下载Excel模板 根据这个Excel模板批量上传数据 可新增修改删除数据. 首先给一个屏幕输入表名,而且要求是Z开头的自建表,因为如果允许标准表修改,准备跑路吧. 下面是定义的变量和屏幕,ALV用OO来实现,也定义类 data: g_table_name type string,"表名 g_table_n…
最近要写个程序,既有更新的,也有删除的,需要涉及到很多系统表,如果一个表一个表进行更新或者删除太慢了,于是就想通过创建动态内表来实现这些功能,在网上找了一些资料,经过多次尝试,终于测试成功了.网上讲述的创建动态内表的方法大致有两种.我做了一下测试,源代码附后.在这里提醒大家一点,在做动态更新程序的时候,要注意两点:      1.使用modify (p_tabname) from <dyn_wa>. 的时候,一定要确定要更新的字段是不是系统表的关键字段,如果是关键字段的话,需要先删除这条记录,…
当abaper开发好一个程序给用户使用一段时间后,发现某个字段的长度需要修改,但数据库表中已经存在很多数据,冒然直接改表字段可能会导致数据丢失,这种问题的后果可能非常严重. 所以我想到先复制出一个新表,在新表里改好字段长度,然后把旧表的数据插入到新表,这一步就是备份数据,再修改旧表的字段长度,如果旧表数据丢失,可以立马把新表的数据复制回旧表,这样就可以解决一些不能预见的的问题. 步骤: 1.第一步就是复制一个新表出来,改好字段. 2.创建一个程序,以下程序需要输入两个表名,一个旧表一个新表,不多…
动态sql,顾名思义就是动态执行的sql,也就是说在没执行之前是动态的拼接的. 任务 传入参数:新建的表名hd+当前的年和月,例如hd_201105表结构是:字段1:id ,类型是number,可以自动增加 字段2:name 类型是varcha2,长度20 字段3:city 类型是varchar2,长度20 建立序列: create sequence t_id increment start nomaxvalue cache ; 建立自动建表过程: create or replace proce…
导读:在最近接手的项目(高效云平台)中,有一个需求是要当企业用户注册时,给其动态的新建一个库和表.刚开始接手的时候,是一点头绪都没有,然后查了一些资料,也问了问上一版本的师哥师姐,终于有了点头绪.目前是有两种方案,第一:应用SQL字符串拼接:第二,使用codeFirst.现在,总结第一种方案. 一.总体概述 既然是使用SQL字符串拼接,那么就涉及到我们操作SQL 创建数据库和表的逻辑了.当我们建库的时候,需要判断这个库是否存在,然后是不存在则创建.同理,建表也是如此.所以,在这里就涉及到了4个方…
导读:在上篇博客中,介绍了使用SQL字符拼接的方式,实现动态建库建表的方法.这样做虽然也能够实现效果,但是,太麻烦,而且,如果改动表结构,字段的话,会对代码修改很多.但是EF给我们提供了一种代码先行的方法,极大程度上的方便了应用. 一.EF的3种工作方式 1.1,Model First 这种EF工作流模式仅仅在实体数据库不存在的情况下使用,使用设计器进行Model 先行开发,开发过程为: 1.在EF设计器里创建model 2.通过model生成实体Database 3.通过model自动生成类c…
在网上查了很多,都说Mybatis不支持动态建表,心凉了一节.还好找到这么一篇,找到了希望:http://www.zzzyk.com/show/ec5660d9cf1071b3.htm 经过在mysql环境下验证,确实可用,不知道其他数据库是否支持,如下: Mapper.xml <update id="createNewTable"> create table `${realTableName}`( `id` int(11) NOT NULL AUTO_INCREMENT,…
MongoDB动态建表方案(官方原生驱动) 需求前提:表名动态,表结构静态,库固定 1.导入相关依赖 <dependency> <groupId>org.mongodb</groupId> <artifactId>mongodb-driver</artifactId> <version>3.11.2</version> </dependency> <dependency> <groupId&g…
测试环境:RHEL 6.4 + Vertica 6.1.3-7 需求:搭建Vertica数据库3节点的测试环境,建立测试用户,建表,测试数据入库. 1.各节点关闭防火墙和SELinux,配置主机名,IP地址,统一root密码,确认系统字符集为utf-8 关闭防火墙和selinux: service iptables status;getenforce;service iptables stop;setenforce 0;service iptables status;getenforce 关闭防…
/****** Object: StoredProcedure [dbo].[GET_TableScript_MSSQL] Script Date: 06/15/2012 11:59:00 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO /*============================================================== 名称: GET_TableScript_MSSQL 功能: 获取c…