zoukankan      html  css  js  c++  java
  • Oracle中如何修改已存在数据的列名的数据类型

    在oracle中,如何修改已存在数据列名的数据类型

    一般人直接在表结构设计这里修改,这里只适合修改列没有数据,可修改

    那么,如何这个列是有数据,是怎么修改的呢?

    直接修改会Oracle错误

    第一步:先创建一个新列名,名字跟修改的名称一样(多了个1),数据类型改成要修改的(如varchar(100))

    第二步:将原列名的数据备份到新列名中,执行赋值操作

    --将旧列名的数据迁到新列名---
    update TMS_DELIVERY_ITEM_BOX set ITEM_BILL1=ITEM_BILL

    第三步:找到tables下columns下的旧列名,删除旧列名

    第四步:找到table下columns下的新列名,重命名(去掉1)

    第五步:检查数据表列名的数据和数据类型(查看)

     也可以单纯用SQL语句进行修改,如

    /*修改原字段名name为name_tmp*/
    alter table Dxc_Receive_Notice rename column ORDERNUM to ORDERNUM_TEMP;
    /*增加一个和原字段名同名的字段name*/
    alter table Dxc_Receive_Notice add ORDERNUM NUMBER(19,5);
    /*将原字段name_tmp数据更新到增加的字段name*/
    update Dxc_Receive_Notice set ORDERNUM=trim(ORDERNUM_TEMP);
    /*更新完,删除原字段name_tmp*/
    alter table tb drop column name_tmp;

    参考网址: https://www.csdn.net/gather_28/MtTaQgwsNDg1Mi1ibG9n.html

  • 相关阅读:
    IK分词器插件
    倒排索引
    logstash-安装、基本使用、入门
    Anaconda使用-详解
    java之反射
    Java中级路线jdbc第一天
    Java字符串及字符串的常用方法知识点总结
    Java基本类型的类包装知识点总结
    Java Class类知识点总结
    java异常类知识点总结
  • 原文地址:https://www.cnblogs.com/xielong/p/11021823.html
Copyright © 2011-2022 走看看