【HICP Gauss】数据库 数据库管理(数据库对象 表空间 索引 序列 分区 视图)-8

时间:2022-07-01 05:48:44

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

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

分类
普通表 数据全局可见 存储在普通表空间 支持分区和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. Net中httpResponse和httpRequest的简单实用;

    这对象很简单,封装很多常用的方法和属性:使用起来也很方便: 这个关键是要对我们的 http中的各种协议要很了解滴呀: 模拟一个简单的暴力破解: public static class HttpInfo ...

  2. 升级Flash Builder 4.6中的Flash Player版本

    测试有效 本人按此方法升级到了flash player 15 Adobe自发布Flash Builder 4.6后,就暂停了Flash Builder新版本的发布.但AIR和FlashPlayer版本 ...

  3. 分享我用Qt开发的应用程序【二】在Qt应用程序中使用字体图标fontawesome

    为了使用简单,需要先写一个单件类,头文件的代码如下: 其中静态方法Instance保证IconHelper的实例全局唯一 (注意构造函数已经私有化了) #ifndefICONHELPER_H #def ...

  4. CentOs6.5中安装和配置vsftp

    一.vsftp安装篇 复制代码代码如下: # 安装vsftpdyum -y install vsftpd# 启动service vsftpd start# 开启启动chkconfig vsftpd o ...

  5. 用canvas实现图片滤镜效果

    1.灰度效果 图片过滤效果之灰度效果 算法及原理: .299 * r + .587 * g + .114 * b; 2.油画效果 算法及原理: 用当前点四周一定范围内任意一点的颜色来替代当前点颜色,最 ...

  6. Jtemplates 基本语法

    jTemplates是一个基于JQuery的模板引擎插件,功能强大,有了他你就再不用为使用JS绑定数据集时发愁了. 首先送上jTtemplates的官网地址:http://jtemplates.tpy ...

  7. java concurrent之前戏synchronized

    对于多线程共享资源的情况须要进行同步,以避免一个线程的修改被还有一个线程的修改所覆盖. 最普遍的同步方式就是synchronized. 把代码声明为synchronized.有两个重要后果,一般是指该 ...

  8. activemq在windows下启动报错,闪退问题

    查验了网上各种方法,都没搞定,最后楼主决定按照linux的解决套路来,把windows计算机名称改为纯英文字母,原计算机名:lee_pc,修改后为leepc,然后重启电脑,再重新运行activemq. ...

  9. Chapter 1 Securing Your Server and Network(2):管理服务的SIDs

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/37927319 ,专题文件夹:http://blog.csdn.net/dba_huang ...

  10. 2018-12-25 VS Code英汉词典v0.0.8: 批量翻译文件部分命名

    续前文: VS Code英汉词典进化效果演示: 翻译文件所有命名 vscode"英汉词典"插件地址: 官方链接 现在实现的效果比之前的演示差很多, 因为executeDocumen ...