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) 表示 ...
随机推荐
- 相关系数之杰卡德相似系数(Jaccardsimilarity coefficient)
杰卡德相似系数(Jaccardsimilarity coefficient) (1)杰卡德相似系数 两个集合A和B交集元素的个数在A.B并集中所占的比例,称为这两个集合的杰卡德系数,用符号 J(A,B ...
- [org.hibernate.engine.jdbc.spi.SqlExceptionHelper]SQL Error: 1064, SQLState: 42000问题的解决办法
[org.hibernate.engine.jdbc.spi.SqlExceptionHelper]SQL Error: 1064, SQLState: 42000问题的解决办法. 出现这种情况的原因 ...
- vector sort AND 友元
# include<iostream> # include<string> # include<algorithm> # include<stdio.h> ...
- PAT 甲级 1015 Reversible Primes
https://pintia.cn/problem-sets/994805342720868352/problems/994805495863296000 A reversible prime in ...
- 【WebService】——契约优先
相关博客: [WebService]--入门实例 [WebService]--SOAP.WSDL和UDDI 前言: 我们先来看一个契约优先的开发实例,通过熟悉他的开发流程,最后再和代码优先的方式进行比 ...
- SQL select 和SQL where语句
一.SQL SELECT语句 用于从表中选取数据,结果被存储在一共结果表中(称为结果集) 1.语法: SELECT 列名称 FROM 表名称 以及: SELECT * FROM 表名称 注:SQ ...
- el-upload怎么拿到上传的图片的base64格式
这里只是本地上传,拿图片的base64,并不向后台直接上传,拿到base64后手动上传 上传前效果: 上传后效果: .vue <el-form-item label="礼品封面&quo ...
- Struts1之bean标签
用于输出 <%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean" %> ...
- [CQOI2012]局部极小值
题目链接 注意到\(4\times 7\)的矩阵的局部极小值最多只有8个,可以状压. 设\(f[i][sta]\)表示从小到大填数,当前填到\(i\),极小值的填充状态为\(sta\)的方案数. 考虑 ...
- BZOJ2753 [SCOI2012]滑雪与时间胶囊 【kruskal】
题目链接 BZOJ2753 题解 完了我连\(kruskal\)裸题都做不出来了.. 题目是求最小树形图,即有向图最小生成树 我们不能直接上\(kruskal\),而要保证先加入前面的点, 所以我们排 ...