--查看表的结构

desc ygb;

select * from user_tab_columns
where table_name='YGB';

--新建表ygb

create table ygb(
  bh number(3),
  eid varchar2(6) constraint eid_p primary key,
  ename varchar2(10),
  bdate date,
  sex char(1),
  city varchar2(20)
);

JOHN@ test10g> create table tbstest
  2  (id int,
  3   dt date
  4  )
  5  tablespace tbs_test;    --指定表存放的表空间

--通过查询新建表

create table emptest as  
select * from emp;

如果此表有几百万行,并且你的时间不允许,那么还有两种方法可以提高创建含有大量数据的新表的速度。可以使用 parallel 和 nologging 选项来提高装载大表的速度。parallel 选项允许你用多个进程并行执行数据加载,并且 nologging 选项指示不要把该信息记录进重做日志文件和回滚段(除了为内务处理目的外)。如下所示:

create table employee_new
as select * from employees
parallel degree 4
nologging;

另一种方法是将一个表简单的从一个表空间移动到另一个表空间。

alter table employee move new_tablespace;

当移动一个表时,行的 rowid 改变了,因而使该表的索引不可用。你必须重新建立索引或者在你移动该表后重建它们。

--重命名表

alter table ygb rename to newname;

--删除表

drop table emp;                          --删除表
drop table emp purge;                    --删除表,不放到回收站
drop table emp cascade constraints;      --将约束一起删除

truncate table emp;                      --截断表

--修改表的结构

alter table emp add (job_id number);                        --追加列 
alter table emp modify (job_id number(4,0) default 1001);   --修改列
alter table emp drop column job_id;                         --删除列 
  alter table emp drop (job_id);
alter table emp rename column job_id to jobid;              --重命名列
income integer generated always as (salary+jiangjin);       --虚拟列

如果要删除列的那个表中包含了大量的数据,你可以将该列标记为未用,而不用完全删除数据。你在任何查询或试图中都不会看到该列,并且所有定义在该列上的所有依赖对象(如约束和索引)都被删除。事实上,用词方法可以快速“删除”一个大数据列。

alter table emp set unused column job_id;    --标记未使用列

然后,可以在某个维护时间中使用以下命令永久删除这两列。

alter table emp drop unused columns;          --删除未使用列

如果认为表中行太多可能潜在的消耗撤销空间,可以用可选的 checkpoint 子句删除一列。通过在一定数目的行后使用检查点,将在删除该列的同时减少撤销数据的产生。参见下面的例子。每当在emp中删除10000行,数据库就使用一个检查点:

alter table emp drop unused columns checkpoint 10000;

alter table emp read write;     --读写状态
alter table emp read only;      --只读状态

可以在只读表上执行以下操作:
select
create/alter/drop index
alter table add/modify/drop/enable/disable constraint
进行物理特性更改的 alter table
rename table 和 alter table rename to
drop table

--创建会话级临时表

create global temporary table temp_tb1(col_a varchar2(30)) 
on commit preserve rows;
 
--创建事务级临时表

create global temporary table temp_tb2(col_a varchar2(30)) 
on commit delete rows

--insert

insert into ygb
values(bhseq.nextval,101,'A','2-3-86','男','西安');

--update

update gzb
set salary=salary*1.1
where eid=108;

--delete

delete from ygb
where eid=108;

--查看表的大小

IKKI@ test11g> select segment_name,segment_type,bytes from user_segments
  2  where segment_name='EMP';

SEGMENT_NAME    SEGMENT_TYPE  BYTES
--------------- ----------    ----------
EMP             TABLE         65536

Oracle基础 10 表 table的更多相关文章

  1. Oracle基础 01 表空间 tablespace

    --查看表空间 select * from dba_tablespaces; select * from v$tablespace; select * from dba_data_files; --查 ...

  2. Oracle基础:表空间名称大小写问题

    现场环境:  操作系统:windows            Oracle版本:10g 今天在通过imp导入数据时,日志提示TS_W5_D表空间不存在.感觉很奇怪,导入用户的表空间是ts_w5_d,并 ...

  3. oracle基础-创建表空间

    一. 创建表空间的完整格式 CREATE [UNDO|TEMPORARY] TABLESPACE tablespace_name       DATAFILE 'path/filename' [SIZ ...

  4. Oracle基础 表分区

    Oracle基础 表分区 一.表分区 (一)表分区的分类 1.范围分区(range) 2.散列分区(hash) 3.列表分区(list) 4.复合分区:范围-哈希(range-hash).范围-列表( ...

  5. Oracle基础(七)数据表

    一.创建表 语法: CREATE TABLE [schema.]table (column datatype[,column datatype[,...]); 说明: CREATE TABLE:为创建 ...

  6. (3)Oracle基础--表

    · 认识表 Oracle中的表都是存储在表空间中,具有以下特点:  <1> 数据的基本存储单元  <2> 二维结构 行:又称为‘记录’ 列:又称为‘字段或域’  <3&g ...

  7. openresty开发系列15--lua基础语法4表table和运算符

    openresty开发系列15--lua基础语法4表table和运算符 lua中的表table 一)table (表)Table 类型实现了一种抽象的"关联数组".即可用作数组,也 ...

  8. oracle数据库【表复制】insert into select from跟create table as select * from 两种表复制语句区别

    create table  as select * from和insert into select from两种表复制语句区别 create table targer_table as select ...

  9. Oracle 数据库基础学习 (三) Oracle 四个表结构

    Oracle 四个表的 emp dept  salgrade  bunus 的结构,记住有利于后期SQL语句的学习 雇员表(emp) No. 字段 类型 描述 1 empno NUMBER(4) 表示 ...

随机推荐

  1. 去西交大考PAT认证

    这周六去了西交大去考浙大PAT认证,为什么要写这个博客呢.因为...我不是西交大的学生,找考场就花了我很多时间,各种搜都找不到PAT的考场在哪. 在此记录一下,希望有有缘人再去西交大考试,可以少走点弯 ...

  2. 以太坊remix IDE安装步骤

    Remix 以太坊Solidity IDE搭建与初步使用 以太坊: 因为以太坊为开源社区,虽然东西很优秀,但是组件十分的杂乱,因此首先简单介绍下以太坊的一些常用组件: Geth: Geth是由以太坊基 ...

  3. MQTT在平台中的应用【本文摘自智车芯官网】

    MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分.该协议支持所有平台,几乎可以把所有联 ...

  4. awk,rsync,重启,maxdepth一层目录,登录,开机自启动

    有100个日志文件,每个文件大约1G,每条日志都以 “H:i:s” 的时间格式开头,如: 05:02:04 xxx yyy zzz 因为是日志文件,所以肯定以时间为顺序的,现在可以确定的是,在某个文件 ...

  5. jquery中ajax的使用(java)

    AJAX方式  js:界面 var prjContextPath='<%=request.getContextPath()%>'; $(document).ready(function() ...

  6. Windows关机过程分析与快速关机

    原文链接:http://blog.csdn.net/flyoxs/article/details/3710367 Windows开机和关机慢,很多时候慢得令人抓狂.特别是做嵌入式开发时(如XPE和Wi ...

  7. 遇到问题---java---myeclipse发布项目打包项目resource资源有缓存---log4j.properties新配置不起作用

    在使用myeclipse过程中遇到一个很奇怪的问题,无论是在myeclipse中deploy发布到tomcat或者打包打成war后在tomcat中运行解压,resource都有缓存的感觉. 比较明显的 ...

  8. [NOIP2002] 字串变换 宽搜+深度优化

    这道题硬是让我用STL水过.......而且题解里说的什么双向宽搜,交替扩展............... 这道题反正,STL用就用吧,但是状态数可以卡到千亿级别,因为这个东西是阶乘扩展的,然后我们发 ...

  9. 【COGS 14】 [网络流24题] 搭配飞行员 网络流板子题

    用网络流水二分图的模型(存一下板子) #include <cstdio> #include <cstring> #include <algorithm> #defi ...

  10. Drac6-Web界面无法访问

    1. ssh idracip, and reset RAC -- will need around 10mins /admin1-> racadm racreset RAC reset oper ...