科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道实例讲解DB2中的表空间(1)

实例讲解DB2中的表空间(1)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

表空间是数据库及存储在该数据库中的表之间的逻辑层。表空间在数据库中创建,表在表空间中创建。本文通过12个例子讲解DB2中的表空间的命令使用,供大家参考!

作者:足球小子 来源:IT专家网 2008年6月3日

关键字: IBM 数据库 DB2

  • 评论
  • 分享微博
  • 分享邮件

例6:用EXTEND子句更改例三所创建的表空间的容器的大小

ALTER TABLESPACE RESOURCE EXTEND (file 'd:\db2data\acc_tbsp' 1000, 
file 'e:\db2data\acc_tbsp' 1000, 
file 'f:\db2data\acc_tbsp' 1000)

该命令的运行结果为在原有容量的基础之上,每个容器再增加1000页。

例7:删除例三中创建的DMS表空间

DROP TABLESPACE RESOURCE

运行的结果为在DB2的注册表中把RESOURCE表空间删除,同时在磁盘上把相对应的文件夹和文件都一起自动删除。

例8:在UNIX上创建一个DMS表空间,使用各有10000页的3个逻辑卷

CREATE TABLESPACE RESOURCE MANAGED BY DATABASE USING (DEVICE '/dev/rdblv6' 10000, 
DEVICE '/dev/rdblv7' 10000, DEVICE '/dev/rdblv8' 000)

上面语句中提到的UNIX设备必须已经存在,且实例拥有者和SYSADM组必须能够写入它们。

特性 SMS DMS
能够在表空间中动态增加容器的数目吗 N Y
能够把索引数据存放到不同表空间的表中吗 N Y
能够把大对象数据存放到不同表空间的表中吗 N Y
表可以分散存放到多个表空间中吗 N Y
仅在需要时才分配空间吗 Y N
表空间可以被放在不同的磁盘中吗 Y N
创建之后,区段大小能够改变吗 N N

例9:创建系统临时表空间

CREATE SYSTEM TEMPORARY TABLESPACE tmp_tbsp MANAGED 
BY SYSTEM USING(‘d:\tmp_tbsp’,’e:\tmp_tbsp’)

系统临时表只能存储在系统临时表空间中,所以数据库必须始终至少有一个系统临时表空间。

例10:创建用户临时表空间

CREATE USER TEMPORARY TABLESPACE usr_tbsp MANAGED 
BY DATABASE USING(FILE ‘d:\db2data\user_tbsp’ 5000, 
FILE ‘e:\db2data\user_tbsp’ 5000)

用户临时表空间用于存储已说明的临时表(用 DECLARE GLOBAL TEMPORARY TABLE 语句定义)

例11:用RENAME语句给表空间重命名

RENAME TABLESPACE RESOURCE TO RES1

用该语句给表空间重命名之后,将自动更改所有引用该表空间的目录记录,所以无须关心该表空间中的个别对象。

例12:在RESOURCE表空间中创建一张名为T1的表

CREATE TABLE T1(ABC INT) IN RESOURCE

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章