DM数据库模式简介

  1. 模式的概念与用法
  • 模式的概念

    用户的模式(SCHEMA)指的是用户账号拥有的对象集,在概念上可将其看作是包含表、视图、索引和权限定义的对象。在 DM 中,一个用户可以创建多个模式,一个模式中的对象(表、视图等)可以被多个用户使用。模式不是严格分离的,一个用户可以访问他所连接的数据库中有权限访问的任意模式中的对象。

系统为每一个用户自动建立了一个与用户名同名的模式作为其默认模式,用户还可以用模式定义语句建立其它模式。

  • 模式包含对象

   1、DM 模式主要包含以下的模式对象:

1). 表;

2). 视图;

3). 索引;

4). 触发器;

5). 存储过程/函数;

6). 序列;

7). 全文索引;

8). 包;

9). 同义词;

10). 类;

11). 外部链接。

2、在引用模式对象的时候,一般要在模式对象名前面加上模式名。具体格式如下:

[模式名].对象名

3、模式对象之外的其他对象统一称为非模式对象,非模式对象主要包括以下几种对象:

1). 用户;

2). 角色;

3). 权限;

4.) 表空间。

  • 模式的创建以及操作
  1. 创建模式
  1. 使用CREATE SCHEMA创建一个模式

  create schema testschema  AUTHORIZATION sysdba;

DM数据库模式简介_第1张图片

 使用SET SCHEMA切换当前模式

   set shema testschema;

  1. 删除模式

drop schema 模式名 {restrict|cascade},默认为restrict,即当模式为空才能删除,如果模式中有对象,则删除报错,cascade则删除模式中所有对象以及依赖。

DM数据库模式简介_第2张图片

DM数据库模式简介_第3张图片

  1. 创建模式时也可以同时创建模式对象

   DM数据库模式简介_第4张图片

  • 模式对象管理
  1. 重命名模式对象

   要重命名一个模式对象,那么这个模式对象必须在指定的模式里面。用户可以采用下面几种方式来重命名模式对象:

1). 删除原有的模式对象,重新创建,此种方式对对象的授权都将失效,必须重新授权。

2). 使用 ALTER … RENAME 语句(TABLE),此种方式对对象的授权将会转移到新对象上。

DM数据库模式简介_第5张图片

  1. 启用或者禁用触发器

  例如:

     ALTER TRIGGER addr_trig ENABLED;

ALTER TRIGGER addr_trig DISABLED;

  1. 启用或禁用,删除完整性约束

   DM数据库模式简介_第6张图片

  1. 使用系统数字字典表查询相关信息

   例如:

DM数据库模式简介_第7张图片

  • 管理模式对象的空间
  1. 普通表和索引

例如:PERSON 建立在表空间 dmgjj 中,初始簇大小为 5,最小保留簇数目为 5,下次分配簇数目为 2,填充比例为 85

CREATE TABLE test.PERSON

(PERSONID INT IDENTITY(1,1) CLUSTER PRIMARY KEY,

SEX CHAR(1) NOT NULL,

NAME VARCHAR(50) NOT NULL,

EMAIL VARCHAR(50),

PHONE VARCHAR(25))

STORAGE(INITIAL 5,MINEXTENTS 5,NEXT 2,ON "dmgjj",FILLFACTOR 85);

DM数据库模式简介_第8张图片

  1. 堆表

   对于堆表可以指定并发分支 BRANCH 和非并发分支 NOBRANCH 的数目,其范围是(1=

如下例创建的 LIST_TABLE 表有并发分支 2 个,非并发分支 4 个。

DM数据库模式简介_第9张图片

  1. HUGE表

DM数据库模式简介_第10张图片

  1. 用户和表上的空间限制
  1. 、用户的空间限制,创建用户时使用diskspace limit进行限制,例如:

DM数据库模式简介_第11张图片

当限制为50M时,则此用户可以使用的最大表空间为50M。

  1. 、表对象的空间限制

     创建表时使用diskspace limit进行限制,当超过限制时报空间不足,例如

DM数据库模式简介_第12张图片

  1. 查看模式对象空间的使用
  1. 、查看用户占用的空间

    select user_used_space(‘用户名’),返回的是用户占用的页。 每页大小16k

  DM数据库模式简介_第13张图片

  1. 、查看表占用的空间

select table_used_space(‘模式名’,‘表名’);返回的是占用多少页

查看页大小sf_get_page_size()

DM数据库模式简介_第14张图片

查看表占用多少页,可以看出占用32页

DM数据库模式简介_第15张图片

        

  1. 、查看表实际使用的页数

table_used_pages(‘模式名’,‘表名’);返回实际使用了多少页

DM数据库模式简介_第16张图片

       

4)、查看索引占用的空间和使用的空间

Index_used_space(索引ID)返回索引占用多少页

Index_used_pages(索引ID)返回索引实际使用多少页

DM数据库模式简介_第17张图片

达梦数据库 - 新一代大型通用关系型数据库 | 达梦在线服务平台

    

你可能感兴趣的:(数据库,java,servlet)