`
Lyh0823
  • 浏览: 11547 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

使用 DB2 对象:创建模式、表和视图

    博客分类:
  • DB2
阅读更多

视图(view) 就像是一个逻辑表,它由一个 SELECT 语句从一个或多个表或视图获得的结果集组成。与关系表不同,视图中的数据不需要物理地存储在硬盘上。当查询视图时就会获取数据。除了在系统编目中存储它的定义之外,视图不使用物理空间。在创建视图之后,可以使用数据操纵语言(Data Manipulation Language,DML)查询视图,甚至更新视图。视图提供了灵活的数据访问功能,可以访问一个表的子集或者来自多个表的结果集的联结,同时隐藏了基表中数据的复杂性。

  为了提供数据库对象(比如表、索引和视图)的逻辑视图,使用一个或多个模式对它们进行分类。模式(schema) 是数据库对象的一个逻辑分类。可以使用相同或不同的模式创建多个数据库对象。例如,在表空间 SYSCATSPACE 中,所有基本系统表和索引都分组在同一个模式 SYSIBM 中。基本编目表和索引的所有视图分组在模式 SYSCAT 或 SYSSTAT 中。

  这个练习演示如何创建模式、表和视图:

  1、在 Control Center 中,点击 All Databases > HELLOWLD > Schemas。看一下在创建数据库时 DB2 创建的现有模式。点击右下方窗口中的 Create New Schema。

  2、在 Create Schema 向导中,输入 HWLD 作为新的模式名称。使用默认的 Authorization Name。点击 OK 运行 CREATE SCHEMA 命令。同样,点击 Show SQL 就会看到实际的 DB2 命令。在命令完成之后,检查 HWLD 是否显示在模式视图中。

  3、在创建对象时,指定它应该属于的模式。如果没有显式地指定模式名,那么在默认情况下会使用用户 ID 作为模式,但条件是用户应该具有 IMPLICIT_SCHEMA 特权(本系列中的下一个教程将详细讨论特权)。参见 参考资料 中对整个 Hello World 系列的链接。

  4、为了创建表,在 Control Center 窗口的左边选择 All Databases > HELLOWLD > Tables。在右下方的窗口中点击 Create New Table。Create New Table 向导窗口启动,它会带领您执行创建表的步骤。

  5、在 Create Table 向导中,首先从下拉菜单中选择 HWLD 作为模式名。输入 AUTHOR 作为表名。输入描述性的注释。点击 Next。

  6、在 Columns 页面上,点击 Add 为 AUTHOR 表添加列。在 Add Column 页面上,指定 AUTHOR_NAME 作为列名,VARCHAR 作为数据类型,长度为 50。点击 OK。

  7、点击 Add 添加第二个列,AUTHOR_ID 作为列名,数据类型是 Integer。点击 OK。再添加第三个列,MODULE_NAME 作为列名,数据类型是 CHARACTER,长度是 20。点击 OK。

  8、应该会在 Columns 页面上看到这三列。

  图 14. 创建表 —— 列

  创建表 —— 列

  9、点击 Next。显示 Data Partitions 页面。

  10、数据分区(Data partitioning) 是 DB2 9 中的一个新特性,它允许跨多个表空间对大型表进行分区。点击 Next 跳过这一步,因为 AUTHOR 表不是分区表。

  11、在 Table spaces 页面上,选择 TBSP_DATA1 作为表空间。选择 Use Separate Index Space,并选择 TBSP_INDEX1 作为索引表空间。还可以为任何大对象指定单独的表空间,但是这里不需要这样做。点击 Next。

  12、如果没有看到 TBSP_DATA1 或 TBSP_INDEX1,那么取消 Create Table 向导并确保从 Control Center 刷新表空间视图。

  13、此时不用定义任何主键或惟一键、维或约束。在后续页面上一直点击 Next,直到到达 Summary 页面。

  14、使用 Summary 页面上的 Show SQL 查看实际的 Create Table 命令。点击 Finish 创建 HWLD.AUTHOR 表。

  15、应该会看到 DB2 Message 窗口(DB20000),这表示命令已经顺利完成,没有错误。关闭消息窗口。

  16、在 Control Center Tables 视图中,点击刚才创建的 AUTHOR 表,在显示窗口中应该会看到表的列定义、模式和创建者。

  图 15. Control Center —— Tables 视图

  CC - Tables 视图

  16、在检查 HWLD.AUTHOR 表之后,添加另一个列,AUTHOR_DOC。让它成为 XML 列,因为要在这个 XML 列中直接存储 XML 文档。

  17、右键单击 AUTHOR,从菜单中选择 Alter,Alter Table 向导打开。点击 Add 启动 Add Column 向导。

  18、在 Add Column 向导中,输入 AUTHOR_DOC 作为列名,选择 XML 作为数据类型。选择 Nullable,表示这个列可以包含 NULL 值。点击 OK。

  19、检查 Alter Table 向导,确认已经添加了一个新的 XML 列。有一个选项可以将表数据存储为压缩格式,如果空间是个大问题或者表数据很大,那么可以考虑使用这个选项。在这里,数据保存为非压缩格式。点击 OK 让 ALTER TABLE 完成操作。应该会返回消息 DB20000。关闭消息窗口。

  在 Control Center 中,选择 Table > Author,应该会看到数据类型为 XML 的第四个列。

  20、为了创建基于 Author 表的视图,选择 Control Center > All Databases > HWLD > Views > Create New View。Create View 向导会带领您执行创建视图的步骤。

  在 Create View 向导中,选择 HWLD 作为视图模式,输入 DB2_AUTHOR 作为视图名。

  21、将 SQL 语句替换为以下语句:

  (AUTHOR_NAME, MODULE_NAME)
  AS
  SELECT AUTHOR_NAME, MODULE_NAME FROM HWLD.AUTHOR WHERE MODULE_NAME='DB2 UDB'

  22、检查选项应该选择 None,使视图属性为只读。点击 OK 创建视图 DB2_AUTHOR。

  23、在 Control Center 中,选择 DB2_AUTHOR 视图,看看屏幕右下方面板中的视图定义。

  图 16. 视图 —— 显示相关对象

  视图 —— 显示相关对象

  24、点击 Show Related Objects。在 Show Related 页面上,点击 Tables 选项卡。显示这个视图的基表的相关信息。点击 Close。

分享到:
评论

相关推荐

    db2数据库入门教程(官方中文版)

    1.4 DB2客户端和驱动........................................................................................................14 1.5 应用程序开发的自由性....................................................

    神通数据库-数据库快速入门.pdf

    在模式中创建数据库对象或访问模式中的对象时,可在对象名前指定模式名。 • 支持数据备份和恢复 神通数据库的备份/恢复工具具有图形化的操作界面。用户利用备份工具可以对整个数据库、指定数据 库、或者指定库中的...

    CoolSQL_windows_0_9_5_RC2

    CoolSQL是一个数据库客户端管理工具。...能够搜索所有数据包括数据库列,表/视图和其他表格型。 支持i18n,当前提供两种语言(中文和英文)。 提供收藏功能,管理由用户收集的文本信息。 支持通过插件扩展其功能。

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    在创建表时,经常会创建该表的主键、外键、唯一约束、Check约束等  语法结构 create table 表名( [字段名] [类型] [约束] ……….. CONSTRAINT fk_column FOREIGN KEY(column1,column2,…..column_n) ...

    db2数据库入门官方教程(中文版)

    1.4 DB2客户端和驱动........................................................................................................14 1.5 应用程序开发的自由性....................................................

    WinSQL Professional v9.0.107.624 破解版

    从Oracle到DB2或其他方式导出到文本文件从文本文件导入生成INSERT INTO现有的数据报表进口/出口手动或计划任务定期运行使用拖放-N-下降移动数据从一个源到另一个增强的数据和模式比较比较两个数据库之间的架构差异...

    asp.net知识库

    动态调用对象的属性和方法——性能和灵活性兼备的方法 消除由try/catch语句带来的warning 微软的应试题完整版(附答案) 一个时间转换的问题,顺便谈谈搜索技巧 .net中的正则表达式使用高级技巧 (一) C#静态成员和...

    citrix 中文管理操作手册

    使用我的视图自定义显示效果 31 管理多个场中的应用程序及服务器 31 使用 Access Management Console 查看区域 31 管理用户会话和服务器进程 31 使用 Access Management Console 创建报告 31 使用 Access Management...

    IBM WebSphere Portal门户开发笔记01

    1、从命令模式切换到视图模式 383 二十二、TDS相关 383 1、LINUX下启动TDS管理界面 383 2、LINUX下启动TDS管理界面到操作端显示 383 3、命令模式启动与停止方式 384 4、TDS日志文件路径 384 5、TDS WEB访问路径及其...

    精通qt4编程(源代码)

    \15.2.1 使用已有的模型和视图类 368 \15.2.2 QListWidget、QtreeWidget \15.2.2 和QTableWidget 370 \15.3 模型(Models) 381 \15.3.1 模型索引 381 \15.3.2 模型角色 382 \15.3.3 自定义模型 382 \15.3.4 代理...

    精通Qt4编程(第二版)源代码

    \15.2.1 使用已有的模型和视图类 368 \15.2.2 QListWidget、QtreeWidget \15.2.2 和QTableWidget 370 \15.3 模型(Models) 381 \15.3.1 模型索引 381 \15.3.2 模型角色 382 \15.3.3 自定义模型 382 \15.3.4 ...

    RMAN测试演练即讲解

    (5) 进入rman使用restore和recover恢复表空间 restore tablespace apollo_data; recover tablespace apollo_data; 备注:从(4)、(5)开始的执行都没有成功,因为drop表空间后即使在系统表里 面也不再有改表...

    php网络开发完全手册

    2.7.1 使用require和require_once语句 2.7.1 进行文件包含 42 2.7.2 使用include与include_once语句 2.7.2 进行文件包含 44 2.8 小结 45 第3章 PHP的数据类型与操作 46 3.1 数据类型的介绍 46 3.1.1 标量数据类型 46...

Global site tag (gtag.js) - Google Analytics