先前表中ID字段类型是用序列,由于安全问题,需要处理水平权限的漏洞,虽然使用加密也可以处理,为了更方便,需要将字段类型改为Guid,如果表中已经有数据,更改起来不是很方便,对于基础数据表,这里提供一个方法:

--创建临时表
CREATE TABLE BASEMODULE_TMP AS SELECT * FROM BASEMODULE;
--清空原表数据
DELETE FROM BASEMODULE;
--修改原始表ID,PARENTID类型
ALTER TABLE BASEMODULE MODIFY ID VARCHAR2(40);
ALTER TABLE BASEMODULE MODIFY PARENTID VARCHAR2(40);
--将临时表数据恢复回来
INSERT INTO BASEMODULE SELECT * FROM BASEMODULE_TMP ;
--删除临时表
DROP TABLE BASEMODULE_TMP ;

下面的直接改一个表名即可

--创建临时表
create table TABLE_TMP as select * from BASEITEMS;
--清空原表数据
delete from BASEITEMS;
--修改ID,ParentID类型
alter table BASEITEMS modify id VARCHAR2(40);
alter table BASEITEMS modify parentid VARCHAR2(40);
--将临时表数据恢复回来
insert into BASEITEMS select * from TABLE_TMP;
--删除临时表
drop table TABLE_TMP;
--创建临时表
create table TABLE_TMP as select * from ITEMSBUGLEVEL;
--清空原表数据
delete from ITEMSBUGLEVEL;
--修改ID,ParentID类型
alter table ITEMSBUGLEVEL modify id VARCHAR2(40);
alter table ITEMSBUGLEVEL modify parentid VARCHAR2(40);
alter table ITEMSBUGLEVEL modify createuserid VARCHAR2(40);
alter table ITEMSBUGLEVEL modify createby VARCHAR2(50);
alter table ITEMSBUGLEVEL modify modifieduserid VARCHAR2(40);
alter table ITEMSBUGLEVEL modify modifiedby VARCHAR2(50);
--将临时表数据恢复回来
insert into ITEMSBUGLEVEL select * from TABLE_TMP;
--删除临时表
drop table TABLE_TMP;

Oracle表字段类型更改的一个经验的更多相关文章

  1. 解决:oracle+myBatis ResultMap 类型为 map 时,表字段类型有 Long/Blob/Clob 时报错

    前言:最近在做一个通用查询单表的组件,所以 sql 的写法就是 select *,然后 resultType="map" .如果数据库中的表里有字段类型为 Long 等类型时,my ...

  2. 使用SQL语句查询表及表字段类型说明

    今天突然遇到有人要数据库表及表字段说明,数据库表太多又不能一个个表去找,就想想SQL是否能直接查询出来. 经过查询资料,加上一些自己的一些调整写了一个sql语句,在此记录一下,以方便日后查找使用. S ...

  3. SqlBulkCopy 批量导入数据 转换表字段类型

    在使用SqlBulkCopy导入数据时,要有一个跟数据库里面同样的DataTable 要赋值表名 要求每个列跟数据库中列同名,并且列的类型要赋值跟数据库中列的类型对应的NET类型 要求数据库中为Nul ...

  4. 查询oracle表字段信息

    表字段的信息咱们可以称之为元数据,今天有人问怎么把表字段的信息导出来,说实话我还不会用plsql develper把表的结构导出来,像下图所示: 在写数据库设计说明书的时候,想要把这个表格拷贝出来,这 ...

  5. oracle查看某表字段类型

    来源:https://www.cnblogs.com/ufindme/p/5033843.html 今天遇到一个问题:要求在可重复执行的SQL脚本添加一段SQL代码:修改当前的数据类型.因为SQL代码 ...

  6. 修改非空表字段类型Oracle

    执行以下语句报"要修改数据类型,则要更改的列必须为空"       alter table 表名 modify (目标字段 varchar2(100)); 解决步骤: 第一步,在表 ...

  7. oracle 在表中有数据的情况下修改表字段类型或缩小长度

    分享自己一些常用的sql语句给大家 偶尔我们需要在已有表,并且有数据的情况下,修改其某个字段的类型或缩短他的长度,但是因为表中有数据,所以不可以直接修改,需要换个思路. //建立测试表,可跳过(善于应 ...

  8. Oracle修改表字段类型(number-->varchar2(len)),亲测可用

    思路: --新建临时表以存储正确的顺序create table A_2 as select (column1,colum2,……A表中的顺序) from A_1 ; --删除表A_1drop tabl ...

  9. MySQL建表字段类型

    1.数据库:在MySQL中,要存储数据,必须从数据库开始,因此首先要创建数据库,但由于学校的MySQL服务器对学生数据帐号有限止,学生不得创建数据库,故每个学生的帐号中已事先由信息中心为大家建立了一个 ...

随机推荐

  1. 20155223 实验5 MSF基础应用

    20155223 实验5 MSF基础应用 基础问题回答 用自己的话解释什么是exploit,payload,encode? exploit:漏洞攻击.一个exploit程序肯定会触发系统的一个或多个漏 ...

  2. 20155318 《网络攻防》 Exp8 Web基础

    20155318 <网络攻防> Exp8 Web基础 基础问题 什么是表单? HTML表单用于收集用户输入,用元素定义,包含不同类型的input元素.复选框.单选按钮.提交按钮等等.一个表 ...

  3. 20155325 Exp4 恶意代码分析

    系统运行监控 (1)使用如计划任务,每隔一分钟记录自己的电脑有哪些程序在联网,连接的外部IP是哪里.运行一段时间并分析该文件,综述一下分析结果.目标就是找出所有连网的程序,连了哪里,大约干了什么(不抓 ...

  4. sprintboot 和swagger2整合生成文档

    1.创建springboot 工程 2.引入maven依赖 <dependency> <groupId>io.springfox</groupId> <art ...

  5. POJ3267

    从今天开始POJ里的一部分类型的题目就一般不放在一起写了 一个是太丑,格式麻烦,第二个是以后的题目难度都有所增大,因此一道题可能就要写蛮长 尤其是DP这一块,以前一直没好好学习,现在从基础的先开始吧 ...

  6. SCC的奇葩算法——Kosaraju

    不会Tarjan,难道就不能与邪恶的SCC作斗争了吗? 祭出Kosaraju. 一些变量名的意义: a[N] 原图的vector存储 b[N] 原图的所有边反向vector存储 s dfs得出的拓扑序 ...

  7. Eclispe与JDK

    一.Eclispe 1.1 Eclispe发布版本 下面是目前已知的版本代号 (Release)[2015年2月] Eclipse 3.1 版本代号 IO [木卫1,伊奥] Eclipse 3.2 版 ...

  8. Security6:查看授予的权限

    在SQL Server的安全体系中,权限分为服务器级别(Server-Level)和数据库级别(Database-Level),用户的权限分为两种形式,分别是直接授予的权限,以及由于加入角色而获得的权 ...

  9. Kosaraju算法、Tarjan算法分析及证明--强连通分量的线性算法

    一.背景介绍 强连通分量是有向图中的一个子图,在该子图中,所有的节点都可以沿着某条路径访问其他节点.强连通性是一种非常重要的等价抽象,因为它满足 自反性:顶点V和它本身是强连通的 对称性:如果顶点V和 ...

  10. nginx location 正则匹配

    nginx 统计语句1.根据访问IP统计UV awk '{print $1}' access.log|sort | uniq -c |wc -l2.统计访问URL统计PV awk '{print $7 ...