什么是数据库对象
数据库对象包括 表 索引 分区 视图 序列 同义词
数据库支持对象
存储过程 自定义函数 触发器 表空间 高级包

数据库中的数据结构 存储数据以及描述数据间的关系
表由行和列组成 数据库中数据存储数据的基本单元

分类
普通表 数据全局可见 存储在普通表空间 支持分区和LOB类型
会话级全局临时表 数据会话级可见 存储在temp表空间 不支持分区和LOB类型
事务级全局临时表 事务会话级可见 存储在temp表空间 不支持分区和LOB类型
本地临时表 表结构会话级可见 存储在temp表中 不支持分别和LOB类型 表明必须以#为前缀
Nologging表 数据全局可见 存储在temp2空间 支持分区和lob类型

语法 查询表空间 select * from dv_tablespaces
# create table
在表空间 human_resource中创建表staffs

create table staffs
(
staff_id not null primary key auto_increment ,
first_name varchar(20),
last_name varchar(20),
graduated_name char(50)
)
tablespace human_resource NOLOGGING

穿件会话级|| 事务级 全局临时表

create global temporary table staff_session
(
id int,
owner char(10)
)
On commit preserve || DELETE ROWs

更改表语法 alter table

# 新增列
alter table schema_name.table_name add full_masks int;
# 删除列
alter table schema_name.table_name drop source;
# 添加约束
alter table schema_name.table_name add constraint ck_training check(staff_id>0);
# 删除约束
alter table schema_name.table_name drop constraint ck_training;
# 重命名training_New
alter table schema_name.table_name rename to training_new;
# 删除表 # 直接删除表
dtop table if exists staff; purge;

索引:索引是对表中一列或者多列的值 进行排序的一种结构 可以提高查询性能
普通索引 B-TREE
唯一索引 unique
函数索引 简历在函数基础上的索引
分区索引 在表的分区上创建的索引 在删除时不影响其他分区索引的使用

创建索引
# CLOB BLOB IMAGE对象不能有索引
create index staffs_ind on staffs(staff_id) tablespace human_resource;
更改索引
# 在线重建索引
alter index staff_ind rebuild online;
# index重命名
alter inedx staffs_ind rename to staffs_new
# 删除索引
drop index if exists staffs_ind staffs_new on table_name;

分区
把逻辑上的一张表根据某种方案分为几张 物理块进行存储 这逻辑的表称为分区表 物理块称之为分区
分区表是一张逻辑表 不存储数据 数据实际存储在分区上

范围分区 range  适用于流水 日志等大表 需要根据时间删除历史日志
间隔分区 interval  相对range更加方便 设置分区间隔 和初始分区键指
列表分区 list  适用于离散值场景
哈希分区 hash  适用于把数据分离开 而不是为了删除数据

# 创建list分区
create table table_name
(
user_id int primary key auto_increment,
username char(10)
)
PARTITION by LIST(user_id)
(
partition part1 values values (1),
partition part2 values values (5),
partition part3 values values (10)
); # 创建分区 RANGE
create table table_range
(
user_id int primary key auto_increment,
username char(10)
)
PARTITION by RANGE(user_id)
(
partition R_0 values less than (50),
partition R_1 values less than (100),
partition R_2 values less than (150)
);
# 更改分区 添加分区R_MAX
alter table table_range add partition R_MAX values less than(maxvalues);
# 删除分区 R_1
alter table table_range Drop partition R_1 ;
# 分裂分区 将R_0 分成R_0_0 R_0_1 其中00的边界为25
alter table table_range SPLITE PARTITION R_0 at(25) into (partition R_0_0 ,partition R_0_1);

分区索引
分区索引是在分区上独立创建索引 在删除某个分区时 不影响其他分区索引的使用

create index index_edu on education(staff_id ,higest_degree) # 创建分区索引
drop index if exists index_edu on education: 删除分区表索引
alter table education drop partition doctor ; 删除分区 doctor
drop table if exists education ; 删除分区表education

视图:
视图从一个或几个表导出的虚拟表 用于数据访问

# 创建视图
create or replace view privilege_view(staff , privilege ,description,appover) as select * from privilege ;
# 删除视图
drop view if exists privilige_view ;

序列:

# 创建序列
create sequence seq_auto_extend start with 10 maxvalue 200 increament by 2 cycle ;
# 修改序列 修改步长为4 最大值为400
alter sequence seq_auto_extend increment by 4 cycle maxvalue 400 ;
# 删除序列
drop sequement if exists seq_auto_extend;

【HICP Gauss】数据库 数据库管理(数据库对象 表空间 索引 序列 分区 视图)-8的更多相关文章

  1. Oracle 数据库、实例、表空间、用户、数据库对象

    Oracle是一种数据库管理系统,是一种关系型的数据库管理系统.通常情况了我们称的“数据库”,包含了物理数据.数据库管理系统.内存.操作系统进程的组合体,就是指这里所说的数据库管理系统. 完整的Ora ...

  2. Oracle - 数据库的实例、表空间、用户、表之间关系

    完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等): 2) Oracle数据库实例则是一组Ora ...

  3. 【转】Oracle - 数据库的实例、表空间、用户、表之间关系

    [转]Oracle - 数据库的实例.表空间.用户.表之间关系 完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物理文件的集合(数据文件,控制文件,联机 ...

  4. Oracle学习笔记—数据库,实例,表空间,用户、表之间的关系

    之前一直使用的关系型数据库是Mysql,而新公司使用Oracle,所以最近从网上搜集了一些资料,整理到这里,如果有不对的地方,欢迎大家讨论. 基本概念: 数据库:Oracle 数据库是数据的物理存储. ...

  5. Oracle数据库体系结构(7) 表空间管理1

    表空间是Oracle数据库最大的逻辑存储结构,有一系列段构成.Oracle数据库对象存储结构的管理主要是通过表空间的管理实现的. 1.表空间的分类 表空间根据存储类型不同分为系统表空间和非系统表空间 ...

  6. [转]Oracle - 数据库的实例、表空间、用户、表之间关系

    本文转自:http://www.cnblogs.com/adforce/p/3312252.html 完整的Oracle数据库通常由两部分组成:Oracle数据库和数据库实例. 1) 数据库是一系列物 ...

  7. Oracle中查询当前数据库中的所有表空间和对应的数据文件语句命令

    Oracle中查询当前数据库中的所有表空间和对应的数据文件语句命令 ------------------------------------------------------------------ ...

  8. 无法为数据库中的对象分配空间,因为'PRIMARY'文件组已满

    用SQL Server2012,做数据保存时出错,错误信息:无法为数据库'***'中的对象'***'分配空间,因为'PRIMARY'文件组已满.请删除不需要的文件.删除文件组中的对象.将其他文件添加到 ...

  9. ORACLE表、索引和分区详解

    ORACLE表.索引和分区 一.数据库表 每种类型的表都有不同的特性,分别应用与不同的领域 堆组织表 聚簇表(共三种) 索引组织表 嵌套表 临时表 外部表和对象表 1.行迁移 建表过程中可以指定以下两 ...

随机推荐

  1. salt远程实现go编译重启

    使用salt实现jenkins发版时,远程对go项目编译重启 1.go 版本1.12 使用go mod 2.设置go镜像 GOPROXY="https://goproxy.io" ...

  2. Eclipse使用Working Set

    当Eclipse中创建了太多的project,太多了,看的眼花缭乱,不好管理,也不想更换工作空间,Eclipse中 Java Working Set 工作集,可以将这些project分组,就像文件夹分 ...

  3. 安卓 App 性能专项测试之流畅度深度解析-上篇

    指标背景 流畅度,顾名思义是用户感知使用App页面时的流畅情况,"App卡不卡",这是用户最直接的感受. 但是要用量化之后的数据衡量流畅度,在Android平台这边并没有直接有效的 ...

  4. 绘制UML图的工具

    目前在用processOn网站进行绘制:https://www.processon.com/ 学习其简单的入门教程: https://www.processon.com/support https:/ ...

  5. Shadowing of static functions in Java

    class A { static void fun() { System.out.println("A.fun()"); } } class B extends A { stati ...

  6. SQL Server 中日志的的作用(Redo和Undo)

    简介 之前我已经写了一个关于SQL Server日志的简单系列文章.本篇文章会进一步挖掘日志背后的一些概念,原理以及作用. 数据库的可靠性 在关系数据库系统中,我们需要数据库可靠,所谓的可靠就是当遇见 ...

  7. 图论 --- 三维空间bfs

    <传送门> [题目大意] 给你一个三维的迷宫,让你计算从入口走到出口最少步数. [题目分析] 其实和二维迷宫还是一样的,还是用队列来做,由于BFS算法一般是不需要回溯的,所以我们就用不着还 ...

  8. OpenLayers加载谷歌地球离线瓦片地图

    本文使用OpenLayers最新版本V5.3.0演示:如何使用OpenLayer加载谷歌地球离线瓦片地图.OpenLayers 5.3.0下载地址为:https://github.com/openla ...

  9. 微信公众号开发 token 验证程序

    <?php traceHttp(); define("TOKEN", "gmll001"); $wechatObj = new wechatCallbac ...

  10. Java的访问修饰符的作用范围

    访问修饰符: private default protected public 作用范围: 访问修饰符\作用范围 所在类 同一包内其他类 其他包内子类 其他包内非子类 private 可以访问 不可以 ...