精华内容
下载资源
问答
  • Oracle列操作(增加列,修改列,删除列),包括操作多列 2014-09-23 15:18 221人阅读 评论(0) 收藏 举报  分类:   Oracle(31)  增加一列:  alter table emp4 add test varchar2...

    Oracle的列操作(增加列,修改列,删除列),包括操作多列

      221人阅读  评论(0)  收藏  举报
      分类:
     

    增加一列:

       alter table emp4 add test varchar2(10);

    修改一列:

       alter table emp4 modify test varchar2(20);

    删除一列:

    alter table emp4 drop column test;

     

      这里要注意几个地方,首先,增加和修改列是不需要加关键字COLUMN,否则会报错ora-00905。

      其次,对删除单列的话,一定要加COLUMN,然后记住,删除是不需要加列类型的。

     

    增加多列:

       alter table emp4 add (test varchar2(10),test2 number);

    修改多列:

       alter table emp4 modify (test varchar2(20),test2 varchar2(20));

    删除多列:

       alter table emp4 drop (test,test2);

    很奇怪的现象,再单列中要加关键字COLUMN,然而再删除多列的时候,不能加COLUMN关键字。

    展开全文
  • 增加索引: CREATE INDEX "DBNAME"."TABLENAME_COLUMNNAME" ON "DBNAME"."TABLENAME" ("COLUMNNAME") ...增加、修改、删除列 -- 增加列 alter table table_name add column_name NVARCHAR2(16); -- 修改列 a...

    增加索引:

    CREATE INDEX "DBNAME"."TABLENAME_COLUMNNAME" ON "DBNAME"."TABLENAME" ("COLUMNNAME") TABLESPACE "TABLESPACENAME";
    
    CREATE INDEX db.tablename_columnname ON db.tablename (columnname) TABLESPACE abc;
    

    增加、修改、删除列

    -- 增加列
    alter table table_name add column_name NVARCHAR2(16);
    
    -- 修改列
    alter table table_name modify column_name NUMBER(16, 0);
    
    -- 删除列
    alter table table_name drop column column_name;
    
    -- 给列增加默认值
    alter table table_name modify create_time default TO_CHAR(sysdate, 'yyyy-MM-dd HH24:mi:ss');
    
    -- 修改列名
    alter table table_name rename column column_name1 to column_name2;
    
    -- 修改表名
    alter table table_name1 rename to table_name2; 
    

    不同于MySQL,Oracle中增加列无法指定列位置,只能增加到最后面。


    查看表的列信息:

    SELECT b.column_name AS column_name, b.data_type AS data_type, b.data_length, b.owner, a.comments
    FROM all_tab_columns b
    	LEFT JOIN all_col_comments a
    	ON (b.table_name = a.table_name
    		AND b.column_name = a.column_name
    		AND b.owner = a.owner)
    WHERE b.table_name = upper('table_name')
    	AND b.column_name = upper('column_name');
    
    展开全文
  • Oracle 删除列 drop columns

    万次阅读 2018-07-30 15:10:46
    Oracle 删除列 drop columns 逻辑上删除 当在一张很大的表中物理上删除列的时候,需要消耗很多的资源和时间,这时候我们可以简单的把要删除的列设置为unused,这就是从逻辑上面删除了表中的列(对数据库中元数据...

    Oracle 删除列 drop columns

    逻辑上删除

    当在一张很大的表中物理上删除列的时候,需要消耗很多的资源和时间,这时候我们可以简单的把要删除的列设置为unused,这就是从逻辑上面删除了表中的列(对数据库中元数据进行的修改)。 
    SQL> create table emp as select * from employees; 
    Table created.–创建一张测试用的表,结构和employees一致。 
    SQL> alter table emp set unused (salary); 
    Table altered.–将salary 列设置为unused. 
    这时候使用desc 查看表的结构就不会存在salary 这一列了,该列对用户是不可见不可用的。 
    SQL> select max(salary) from emp; 
    select max(salary) from emp 

    ERROR at line 1: 
    ORA-00904: “SALARY”: invalid identifier 
    可以通过*_unused_col_tabs 查看到表中删除的列的数量。 
    SQL> select * from dba_unused_col_tabs 
    2 where table_name = ‘EMP’; 
    OWNER TABLE_NAME COUNT


    HR EMP 1 
    如果需要回收设置为unused 的列所占用的空间,可以使用以下的语句。 
    checkpoint 的意义在于当在一个很大的表中删除一个列的时候需要长时间占用很多的undo 空间,这可能会影响到其他操作对undo 空间的获取,所以指定处理完一定数量的列以后,执行一次checkpoint 释放undo空间。 
    SQL> alter table emp drop unused columns checkpoint 250; 
    Table altered. 
    上述语句会把某张表中所有设置为unused 的列都删除掉。 
    同时需要注意的是设置为unused 的列是不可以恢复的。不存在类似rollback 的方式。

    物理上删除

    可以使用以下的方式物理上面删除一个列: 
    SQL> alter table emp drop column commission_pct; 
    Table altered.–一次只删除一个列。 
    SQL> alter table emp drop (first_name,last_name); 
    Table altered.–一次删除多个列。 
    物理上删除的列也不存在类似rollback 的恢复方式。 
    注:不能删除一个表中所有的列。 
    当物理上删除一个表中的列的时候,该表中所有设置为unused 的列也会被删除。

    感谢:https://blog.csdn.net/tajun77/article/details/50461755

    展开全文
  • Oracle列操作(增加列,修改列,删除列),包括操作多列 增加一列:  alter table emp4 add test varchar2(10); 修改一列:  alter table emp4 modify test varchar2(20); 删除一列: alter table emp4 drop ...
     
    

    增加一列:

       alter table emp4 add test varchar2(10);

    修改一列:

       alter table emp4 modify test varchar2(20);

    删除一列:

    alter table emp4 drop column test;

     

      这里要注意几个地方,首先,增加和修改列是不需要加关键字COLUMN,否则会报错ora-00905。

      其次,对删除单列的话,一定要加COLUMN,然后记住,删除是不需要加列类型的。

     

    增加多列:

       alter table emp4 add (test varchar2(10),test2 number);

    修改多列:

       alter table emp4 modify (test varchar2(20),test2 varchar2(20));

    删除多列:

       alter table emp4 drop (test,test2);

    很奇怪的现象,再单列中要加关键字COLUMN,然而再删除多列的时候,不能加COLUMN关键字。

    标准SQL修改字段类型和长度语句:
    ALTER TABLE tableName modify column columnName 类型;
    例如Mysql的修改字段类型语句:
    alter table test modify column name varchar(255);

    Oracle修改字段类型和长度语句:
    ALTER TABLE tableName modify(columnName 类型);
    例如
    alter table test modify(name varchar(255));




    展开全文
  • Oracle设置和删除不可用

    千次阅读 2015-08-08 17:56:10
    Oracle设置和删除不可用1、不可用是什么?就是表中的1个或多个被ALTER TABLE…SET UNUSED 语句设置为无法再被程序利用的。2、使用场景? If you are concerned about the length of time it could take to ...
  • 出于安全考虑,oracle不允许删除sys中数据表的 二、问题解决 自己创建一个用户并赋予权限,再进行操作 1、SQL P lus登录 输入:sys as sysdba 以及口令 2、创建表空间 (1)复杂 create tablespace tablespace_...
  • 删除一个字段(未验证在有数据,并且互有主外键时,是否可用)语法:alter table 表名 drop column 字段名(即列名);例:alter table T_Student2 drop column sex;
  • Oracle的添加、删除和修改

    千次阅读 2011-05-03 15:46:00
    Oracle的添加、删除和修改 2010-10-21 15:47 1、添加 语法:ALTER TABLE table_name ADD(new_column_name datatype[DEFAULT value] [NOT NULL]); 例子:ALTER TABLE employee ADD(phone ...
  • Oracle 表分区删除操作

    千次阅读 2018-04-15 14:18:52
    全部删除ALTER TABLE 表名 DROP PARTITION 分区名;仅仅删除分区数据ALTER TABLE 表名 TRUNCATE PARTITION 分区名;注意:操作不可逆请谨慎操作
  • Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production 同事用Kettle去完成数据上传的时侯,发现执行的比较慢。于是点开Kettle的update,检查更新设置是否正确。检查update设置,发现没有...
  • oracle表 中删除

    万次阅读 2012-09-29 16:15:49
    1、测试 在sys用户下创建测试表: SQL> create table t as select object_id,object_name from dba_objects; 表已创建。 ...SQL> select count(*)from t ;...删除object_name : SQL> alter table t
  • oracle数据库备份删除操作

    千次阅读 2016-01-25 10:02:44
    oracle数据库备份删除操作   1、删除多余的归档日志 在ORACLE10G中,默认的归档路径为$ORACLE_BASE/flash_recovery_area。对于这个路径,ORACLE有一个限制,就是默认只能有2G的空间给归档日志使用,可以使用...
  • oracle排序(顺序、倒序) ORDER BY 后可加2个字段,用英文逗号隔开。 1、f1用升序, f2降序,sql该这样写; 1 ORDER BY f1, f2 DESC 2、也可以这样写,更清楚; 1 ...
  • oracle删除语句

    千次阅读 2017-08-29 17:12:27
    1、删除用户语句: //保证有删除用户的权限 drop user user_name cascade; 2、授权 grant connect,dba to 用户名;3、三种删除语句 如下引用 http://www.cnblogs.com/8765h/archive/2011/11/25/2374167.html 内容...
  • oracle删除表语句

    千次阅读 2019-04-19 16:17:00
    删除表(记录和结构)的语名delete————truncate————... 注意:删除记录并不能释放ORACLE里被占用的数据块表空间.它只把那些被删除的数据块标成unused.  如果确实要删除一个大表里的全部记录,可以用TR...
  • Oracle rownun

    千次阅读 2008-12-06 13:17:00
    oracle的伪rownum小结2007-08-12 20:16本人最近在使用oracle的rownum实现分页显示的时候,对rownum做了进一步的分析和研究。现归纳如下,希望能给大家带来收获。 对于rownum来说它是oracle系统顺序分配为从查询...
  • oracle 删除表中重复记录

    千次阅读 2016-06-30 14:11:40
    oracle 删除表中重复记录
  • Oracle的表操作——修改和删除

    万次阅读 2017-11-13 14:29:39
    1、修改表的操作: (1)、添加: 语法格式:alter table talbe_name add column_name dataType; 例:alter table student add tel varchar2(11); (2)、修改: 语法格式:alter table table_name modify ...
  • Oracle 行转 动态出转换的

    万次阅读 多人点赞 2018-10-02 13:03:23
    10月的第二天,前天写了个Oracle中行转的pivot的基本使用方法,然后,因为pivot的用法中,正常情况下,我们需要转出多少个,都得在我们的sql中完完整整地写出,而不能直接在里面写个查询来动态转换。然后,趁着...
  • Oracle数据库SQL操作.ppt

    2014-08-02 11:48:55
    Oracle数据库的sqlplus操作,以s_emp,s_dept,s_region表为主要的学习对象,基本的数据库操作,增加或者修改,添加删除约束,删除表,删除表所有的数据等
  • ORACLE级联删除

    千次阅读 2010-04-02 15:13:00
    转自 http://hi.baidu.com/j2eespace/blog/item/ae5f89afb117acfffbed501e.html 最近软件系统中要删除一条记录,就要关联到同时删除好多张表,他们之间还存在...ORACLE则只充许级联删除。SQL级联删除与级联更新使用格式
  • Oracle删除重复行

    千次阅读 2010-12-12 17:10:00
    查询及删除重复记录的SQL语句 1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from people group by ...
  • oracle 数据库表字段添加、修改、删除操作 1. 创建表 -- Create table create table TB_PERMISSION_ORGANIZATION ( id VARCHAR2(150) not null, parent_id VARCHAR2(150), name VARCHAR2(200) not nu...
  • oracle rowid和rownum

    千次阅读 2011-09-28 18:51:27
    转载:... 整理ROWID一 一,什么是伪RowID? 1,首先是一种数据类型,唯一标识一条记录物理位置的一个id,基于64位编码的18个字符显示。 2,未存储在表中,可以从表中查询,但不支持插入,更新,删除
  • ORACLE日常操作手册

    万次阅读 2012-09-07 16:37:45
    以前为开发人员编写的oracle基础操作手册,都基本的oracle操作和SQL语句写法,适合初学者。 因是很久之前写的,文章中可能会存在不准确的地方,希望指正。   ORACLE日常操作手册 目录 一、......数据库的启动...
  • Oracle数据库的数据表的增删改查操作 新增表 CREATE TABLE 表名 ( 字段1 VARCHAR(36) NOT NULL, 字段2 VARCHAR(36) NOT NULL, 字段3 VARCHAR(36) NOT NULL ) 更新字段名称 alter table 表名 rename column 老...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 128,793
精华内容 51,517
关键字:

oracle删除列操作