zoukankan      html  css  js  c++  java
  • 转:Oracle alter语句的用法

     【引用】Oracle alter语句的用法

    2011-04-07 10:58:35| 分类: 默认分类 | 标签: |字号订阅

    本文转载自江上渔火《Oracle alter语句的用法》
     

    alter语句的用法

    需要修改结构的,就用到alter语句,方法如下:

    ALTER TABLE语句用于修改已经存在的表的设计。

    语法:ALTER TABLE table ADD COLUMN field type[(size)] [NOT NULL] [CONSTRAINT index]
    ALTER TABLE table ADD CONSTRAINT multifieldindex
    ALTER TABLE table DROP COLUMN field
    ALTER TABLE table DROP CONSTRAINT indexname

    说明:table参数用于指定要修改的表的名称。
    ADD COLUMN为SQL的保留字,使用它将向表中添加字段。
    ADD CONSTRAINT为SQL的保留字,使用它将向表中添加索引。
    DROP COLUMN为SQL的保留字,使用它将向表中删除字段。
    DROP CONSTRAINT为SQL的保留字,使用它将向表中删除索引。
    field指定要添加或删除的字段的名称。
    type参数指定新建字段的数据类型。
    size参数用于指定文本或二进制字段的长度。
    indexname参数指定要删除的多重字段索引的名称。

    用sql*plus或第三方可以运行sql语句的程序登录数据库:

    ALTER TABLE (表名) ADD (列名 数据类型);
    ALTER TABLE (表名) MODIFY (列名 数据类型);
    ALTER TABLE (表名) RENAME COLUMN (当前列名) TO (新列名);
    ALTER TABLE (表名) DROP COLUMN (列名);
    ALTER TABLE (当前表名) RENAME TO (新表名);

    如:
    Alter Table Employ Add (weight Number(38,0)) ;

    Alter Table Employ Modify (weight Number(13,2)) ;

    Alter Table Emp Rename Cloumn weight To weight_new ;
    ALTER TABLE emp DROP COLUMN weight_new ;

    ALTER TABLE bouns RENAME TO bonus_new;
    增加一个列:
    ALTER TABLE 表名 ADD(列名 数据类型);
    如:
    ALTER TABLE emp ADD(weight NUMBER(38,0));

    修改一个列的数据类型(一般限于修改长度,修改为一个不同类型时有诸多限制):
    ALTER TABLE 表名 MODIFY(列名 数据类型);
    如:
    ALTER TABLE emp MODIFY(weight NUMBER(3,0) NOT NULL);

    给列改名:
    ALTER TABLE 表名 RENAME COLUMN 当前列名 TO 新列名;
    如:
    ALTER TABLE emp RENAME COLUMN weight TO weight_new;

    删除一个列:
    ALTER TABLE 表名 DROP COLUMN 列名;
    如:
    ALTER TABLE emp DROP COLUMN weight_new;

    将一个表改名:
    ALTER TABLE 当前表名 RENAME TO 新表名;
    如:
    ALTER TABLE bouns RENAME TO bonus_new


    ====================================================================================
    alter USER user IDENTIFIEDBY ’newpassword’REPLACE ’oldpassword’

    ------------

    附:oracle与Db2增加修改字段:

    Db2:

    alter table t_disp_fixedaddress add SIMNO bigint;

    alter table t_disp_fixedaddress add PASSWORD varchar(32);

    修改:

    alter table t_mobile_userinfo alter column userpassword set data type varchar(32)

    oracle:
    alter table t_disp_fixedaddress add (SIMNO number(11));

    alter table t_disp_fixedaddress add (PASSWORD varchar2(32));

    alter table t_mobile_userinfo modify (userpassword varchar2(32))

    ----------------

  • 相关阅读:
    mysql sum 重复计算_mysql join sum时数据重复问题及解决方案
    mysql数据库中,查询一个表的下一条数据减上一条数据的值的写法
    FROM_UNIXTIME 格式化MYSQL时间戳函数
    Mysql 中日期类型bigint和datetime互转
    mysql 按照指定字段的指定数据进行排序 filed函数
    MYSQL使用group by,如何查询出总记录数
    iptables添加开放端口
    MySQL之You can't specify target table for update in FROM clause解决办法
    epoll 使用 LT + 非阻塞 IO 和 ET + 非阻塞 IO 比较
    sizeof和strlen的比较
  • 原文地址:https://www.cnblogs.com/qima/p/2670170.html
Copyright © 2011-2022 走看看