Oracle基础 10 表 table
--查看表的结构
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的更多相关文章
- Oracle基础 01 表空间 tablespace
--查看表空间 select * from dba_tablespaces; select * from v$tablespace; select * from dba_data_files; --查 ...
- Oracle基础:表空间名称大小写问题
现场环境: 操作系统:windows Oracle版本:10g 今天在通过imp导入数据时,日志提示TS_W5_D表空间不存在.感觉很奇怪,导入用户的表空间是ts_w5_d,并 ...
- oracle基础-创建表空间
一. 创建表空间的完整格式 CREATE [UNDO|TEMPORARY] TABLESPACE tablespace_name DATAFILE 'path/filename' [SIZ ...
- Oracle基础 表分区
Oracle基础 表分区 一.表分区 (一)表分区的分类 1.范围分区(range) 2.散列分区(hash) 3.列表分区(list) 4.复合分区:范围-哈希(range-hash).范围-列表( ...
- Oracle基础(七)数据表
一.创建表 语法: CREATE TABLE [schema.]table (column datatype[,column datatype[,...]); 说明: CREATE TABLE:为创建 ...
- (3)Oracle基础--表
· 认识表 Oracle中的表都是存储在表空间中,具有以下特点: <1> 数据的基本存储单元 <2> 二维结构 行:又称为‘记录’ 列:又称为‘字段或域’ <3&g ...
- openresty开发系列15--lua基础语法4表table和运算符
openresty开发系列15--lua基础语法4表table和运算符 lua中的表table 一)table (表)Table 类型实现了一种抽象的"关联数组".即可用作数组,也 ...
- 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 ...
- Oracle 数据库基础学习 (三) Oracle 四个表结构
Oracle 四个表的 emp dept salgrade bunus 的结构,记住有利于后期SQL语句的学习 雇员表(emp) No. 字段 类型 描述 1 empno NUMBER(4) 表示 ...
随机推荐
- 去西交大考PAT认证
这周六去了西交大去考浙大PAT认证,为什么要写这个博客呢.因为...我不是西交大的学生,找考场就花了我很多时间,各种搜都找不到PAT的考场在哪. 在此记录一下,希望有有缘人再去西交大考试,可以少走点弯 ...
- 以太坊remix IDE安装步骤
Remix 以太坊Solidity IDE搭建与初步使用 以太坊: 因为以太坊为开源社区,虽然东西很优秀,但是组件十分的杂乱,因此首先简单介绍下以太坊的一些常用组件: Geth: Geth是由以太坊基 ...
- MQTT在平台中的应用【本文摘自智车芯官网】
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分.该协议支持所有平台,几乎可以把所有联 ...
- awk,rsync,重启,maxdepth一层目录,登录,开机自启动
有100个日志文件,每个文件大约1G,每条日志都以 “H:i:s” 的时间格式开头,如: 05:02:04 xxx yyy zzz 因为是日志文件,所以肯定以时间为顺序的,现在可以确定的是,在某个文件 ...
- jquery中ajax的使用(java)
AJAX方式 js:界面 var prjContextPath='<%=request.getContextPath()%>'; $(document).ready(function() ...
- Windows关机过程分析与快速关机
原文链接:http://blog.csdn.net/flyoxs/article/details/3710367 Windows开机和关机慢,很多时候慢得令人抓狂.特别是做嵌入式开发时(如XPE和Wi ...
- 遇到问题---java---myeclipse发布项目打包项目resource资源有缓存---log4j.properties新配置不起作用
在使用myeclipse过程中遇到一个很奇怪的问题,无论是在myeclipse中deploy发布到tomcat或者打包打成war后在tomcat中运行解压,resource都有缓存的感觉. 比较明显的 ...
- [NOIP2002] 字串变换 宽搜+深度优化
这道题硬是让我用STL水过.......而且题解里说的什么双向宽搜,交替扩展............... 这道题反正,STL用就用吧,但是状态数可以卡到千亿级别,因为这个东西是阶乘扩展的,然后我们发 ...
- 【COGS 14】 [网络流24题] 搭配飞行员 网络流板子题
用网络流水二分图的模型(存一下板子) #include <cstdio> #include <cstring> #include <algorithm> #defi ...
- Drac6-Web界面无法访问
1. ssh idracip, and reset RAC -- will need around 10mins /admin1-> racadm racreset RAC reset oper ...