`

4、模式对象管理 (table,index,seq)

 
阅读更多
这里说的模式对象:表,索引,约束,视图,同义词,序列。
模式是一个数据库对象的集合,为一个数据库用户所有,并且具有与该用户相同的名称
模式对象是由用户创建的逻辑结构,用来包含或引用他们的数据。
1.管理表
第一、创建表
create table user.table_name    --用户名.表名
(
{column1 datatype               --列名,类型
   [default expr]               --默认值,
   [column_constraint]},        --约束
{[column2 datatype ]...}
)
[constraint table_constraint]   --表间约束
[cluster cluster1 (column1,column2,...)] --聚合?
[pctfree n]                     --如果数据库剩余的自由空间少于pctfree自由空间,也就是说数据库已经写满,那么数据库就不会对其进行插入操作 
[pctused n]                     --每个update和delete操作后,数据库会比较该数据块的已用空间和pct_used,如果少于pct_used的已用空间,那么这个数据块被加入到自由列表中,供insert使用
[storage n]                     --inital 初始大小,next 下一次大小,minextents 最小分配数,maxextents 最大分配数,pctincrease 增长百分比
[tablespace tbs]                --表空间
[enable|disable]
[as query]                      --在查询的时候创建
列:
create table tab_01 nologging compress 
tablespace temp
as select * from tab_02 where 1=1 and ...;

查看表创建信息。
select owner,table_name,tablespace_name,initial_extent from dba_tables where owner ='scott';

第二、修改表结构
alter table tab_01 add(addName varchar2(30));--添加列
alter table tab_01 modify(addName varchar2(100));--修改列
alter table tab_01 rename column addName to delName;--修改列名
alter table tab_01 drop column delName;--删除列
rename tab_01 to tab_02;      --重命名表
alter table tab_02 to tab_01; --重命名表
drop table tab_01[cascade constraints]; --删除表,包括约束
-------------------------------------------------------
--修改表空间的存储位置
使用alter table ... move ...重定位非分区表的数据到新的段中。
alter table tab_01 move 
storage (initial 20K 
  next 40K 
  minextents 2
  maxextents 20)

第三、监控表的存储空间
--1.对表进行分析统计
analyze table tab_01 compute statistics;
--2.估计统计
analyze table tab_01 estimate statistics;
--3.分析指定行记录样本
analyze table tab_01 estimate statistics sample 2000 rows;
--4.分析百分比样本
analyze table tab_01 estimate statistics sample 80 percent;
--5.删除统计数据
analyze table tab_01 delete statistics;
--6.查询分析结果
select table_naem ,num_rows,blocks,empt_blocks from dba_tables where table_name ='tab_01';

第四、外部表
外部表的作用?
------------------------------------
2.索引
索引在物理和逻辑上依赖于表的数据,作为独立的结构,需要存储空间的支持。在插入,更新,删除表中的数据时,数据库将自动维护索引
维护建议:
在插入数据后创建索引。
为提高性能,为索引列排序
限制每个表索引的数量
为每个索引表定义表空间
考虑创建并行索引 --????
--默认索引 B-tree索引
--创建索引
create index tab_index on tab_01 (tab_No,tab_Name) tablespace index_tbs;
--重建索引
ALTER INDEX tab_index rebuild online;
-----------------------------------------------------------
oracle 提供了监控索引的方式能够确定是否被使用,这个要在实战中学习。

3.视图
create or replace view tab_view as 
select t01.tab_No,t01.tab_name,t02.tab_age
from tab_01 t01 ,tab_02 t02
where t01.tab_No = t02.tab_no;

4.序列
--创建
create sequence tab_seq 
increment by 1 start with 1
nomaxvalue nocycle cache 0;
--修改
alter sequence tab_seq
increment by 10 maxvalue 10000
cycle cache20;
--删除
drop sequence tab_seq;
分享到:
评论

相关推荐

    Oracle第9章模式对象.pptx

    【Oracle第9章模式对象】主要讲解了Oracle数据库中关于模式、表、索引、分区表、分区索引以及视图、序列、同义词和数据库链接等模式对象的管理和操作。以下是各部分的详细说明: 1. **模式概念**: - 模式是逻辑...

    事务和数据库对象事务和数据库对象.docx

    事务在数据库管理系统(DBMS)中扮演着至关重要的角色,尤其是在确保数据一致性和完整性方面。随着业务系统的复杂度增加,单一的数据库操作往往不足以完成一项完整的业务逻辑。例如,在银行转账过程中,需要从一个账户...

    oracle hr用户创建脚本

    一个模式在Oracle中相当于一个逻辑数据库,它可以包含表、视图、索引、存储过程等对象。 在Oracle HR创建脚本中,首先我们需要了解一些基本概念: 1. **用户(User)**:在Oracle中,用户是数据库的访问者,拥有...

    liquibase API 帮助文档

    Liquibase 是一款用于数据库版本控制的强大工具,它可以帮助开发者们自动化地管理和应用数据库模式变更。本文将详细介绍如何利用 Liquibase 的 API 来操作数据库,包括更新、删除、插入等常见操作。 #### 一、安装...

    Oracle数据库培训1.ppt

    Oracle数据库的逻辑结构包括表空间、模式对象、数据块、范围和段。表空间是存储数据库对象的容器,由数据文件组成。模式对象包括表、视图、序列等。数据块是Oracle存储数据的最小单位,范围和段管理磁盘空间的分配。...

    数据库oracle 学习笔记重点总结

    4. **表管理:** - 创建表: ```sql create table student (sid varchar(9)); ``` 该命令用于创建一个名为`student`的新表,其中包含一个名为`sid`的列。 - 删除表: ```sql drop table student; ``` 该...

    数据库操作处理笔记

    create index index_name on table_name (column_name) partition by range (partition_column); ``` **3. 主键、约束和唯一索引:** - 创建主键: ```sql alter table table_name add constraint pk_table_...

    freemarker总结

    上面的语法格式中,sequence就是一个集合对象,也可以是一个表达式,但该表达式将返回一个集合对象,而item是一个任意的名字,就是被迭代输出的集合元素.此外,迭代集合对象时,还包含两个特殊的循环变量: item_index:...

    oracle常用命令2.txt

    例如,`TYPE A IS TABLE OF emp.empno%TYPE INDEX BY BINARY_INTEGER;`定义了一个表类型A,用于存储emp表中empno字段的值,`TYPE B IS RECORD (deptno dept.deptno%TYPE, dname dept.dname%TYPE);`则定义了一个记录...

    oracle学习精简摘要

    创建索引的基本语法为:`CREATE INDEX index_name ON table_name (column_name);` - **哪些字段应建索引** 通常,对于经常用于查询条件的列、连接条件的列以及ORDER BY子句中出现的列,都应该考虑建立索引。 - ...

    orcle索引_视图序列同义词实验

    - **实验步骤**:在SCOTT模式下,为`emp`表中的`deptno`列创建索引。 ```sql CREATE INDEX emp_deptno_idx ON emp(deptno); ``` **知识点解析**:索引是用于提高查询速度的数据结构。通过创建索引可以显著加快...

    postgresql中文手册9.1

    - **Schema的概念**:Schema 是 PostgreSQL 中组织对象(如表、函数等)的一种方式,类似于数据库层级结构中的目录或文件夹。 - **创建Schema**:使用 `CREATE SCHEMA` 命令创建新的 Schema: ```sql CREATE ...

    Oracle_11g课后答案_孙凤栋

    - **索引命名**: `table_name+column_name+index_type(idx)`,其中`column_name`取前几个单词的首字母加最后一个单词组成。 - **序列命名**: `seq_+table_name`。 **1.4 Oracle数据库服务的作用** - **监听器服务*...

    R语言简介(数据分析与绘画的编程环境简介)

    合理管理这些对象可以避免内存占用过高。常用的清除对象的方法包括`rm()`函数和菜单选项。 #### 向量与赋值 向量是R中最基本的数据结构之一,它可以存储相同类型的元素。创建向量通常使用`c()`函数。例如,`x (1, ...

    R语言入门教程

    模式决定了对象的基本数据类型,如numeric、character或logical;长度则表示对象中元素的数量。 #### 十八、改变对象的长度 可以使用`length`函数获取对象的长度,也可以通过赋值来改变对象的长度。例如,`x (10)`...

    VB6.0开发后的数据库函数总结及数据库操作

    下面是一个简单的示例,展示如何在VB6.0中创建存储过程并使用不同的模式来对数据库进行操作: ```vb Public Sub Pro_Combine(ByVal action_mode As String, ByVal parameter As String, ByRef out_value As String)...

    模拟分批导出BLOB大字段.txt

    在Oracle数据库中处理包含BLOB(Binary Large Object)类型字段的表时,常常会遇到性能和管理上的挑战。特别是在没有主键或唯一键的情况下进行大批量数据的导出工作时,这种挑战尤为显著。本文旨在通过一种特殊的...

    R语言笔记:数据分析与绘图的编程环境

    每个R对象都有一个模式(mode),它可以是numeric、character、logical等。长度则表示对象中的元素数量。 **3.2 改变对象的长度** 可以通过给对象赋值一个新向量来改变其长度。例如`x (x, 10)`会将10添加到向量x的...

    R语言简介,PDF格式的

    - **固有属性:模式和长度**:每个R对象都有一个模式(mode)和长度(length),模式描述了对象的基本类型,如数字、字符等。 - **改变对象的长度**:可以通过向量索引的方式增加或减少对象的长度。 - **属性的获取和...

Global site tag (gtag.js) - Google Analytics