zoukankan      html  css  js  c++  java
  • oracle新增列,删除列,修改列

    --增加一列:
    alter table A add( 添加列 varchar2(20));
    --修改列:
    alter table A rename column 旧名称 to 新名称;
    --修改列的类型:
    alter table A modify 列名称 varchar(200);
    --删除数据库一列
    alter table A drop column 列名称;
    --删除多列
    ALTER TABLE table_name DROP (column_name , …);
    --对比两种语法可以看出,删除一列时需要使用COLUMN关键字,而删除多列时则不需要。
    --重命名表名
    ALTER TABLE 旧表名 RENAME TO 新表名;
    --或者
    RENAME 旧表名 TO 新表名;

    有一个表名为tb,字段段名为name,数据类型 char(20)。

    1、假设字段数据为空,则不管改为什么字段类型,可以直接执行:
    alter table tb modify (name varchar2(20));

    2、假设字段有数据,则改为nvarchar2(20)可以直接执行:
    alter table tb modify (name varchar2(20));

    3、假设字段有数据,则改为varchar2(40)执行时会弹出:“ORA-01439:要更改数据类型,则要修改的列必须为空”,这时要用下面方法来解决这个问题:

    /*修改原字段名name为name_tmp*/
    alter table tb rename column name to name_tmp;

    /*增加一个和原字段名同名的字段name*/
    alter table tb add name varchar2(40);

    /*将原字段name_tmp数据更新到增加的字段name*/
    update tb set name=trim(name_tmp);

    /*更新完,删除原字段name_tmp*/
    alter table tb drop column name_tmp;

    原文链接:https://blog.csdn.net/u013058618/java/article/details/52078860

  • 相关阅读:
    HDU 1251 统计难题
    HDU 1212 Big Number
    HDU 1205 吃糖果
    HDU 5776 Sum
    19 中山重现赛 1002 triangle
    7.29 线段树扫描线 ,矩形扫描
    一个很好的主席树总结
    7.14 单调栈 单调队列 +dp优化
    7.14 一个烦人的bug:dp[ q[tail] ] ---> dp[ tail ]
    7.13 cf573 补题
  • 原文地址:https://www.cnblogs.com/ketoli/p/12205728.html
Copyright © 2011-2022 走看看