教你快速掌握DB2数据库创建外键时的选项

教你快速掌握DB2数据库创建外键时的选项,第1张

;   免费看《Windows CE 嵌入式系统开发 从基础到实践》

创建外键时的选项

创建测试表

drop table student;drop table class;drop table student_class;Create table student(student_id integer not null student_name varchar( ) CONSTRAINT P_KEY_ primary key (student_id)) in luzl_ k_tb index in luzl_ k_tb ;Create table class(class_id integer not null class_name varchar( ) CONSTRAINT P_KEY_ primary key (class_id)) in luzl_ k_tb index in luzl_ k_tb ;Create table student_class(student_class_id integer student_id integer class_id integer) in luzl_ k_tb index in luzl_ k_tb;alter table student_class add constraint if_class foreign key(class_id) references class(class_id) ON DELETE cascade ON UPDATE RESTRICT;alter table student_class add constraint if_student foreign key(student_id) references student(student_id) ON DELETE cascade ON UPDATE RESTRICT;Insert into student(student_id student_name) values( luzl );Insert into class(class_id class_name) values( db );Insert into student_class(student_class_id student_id class_id) values( );

On Delete 的选项有

Restrict/no action/cascade/set null 其中cascade选项指定的话 如果删除父记录 依赖于他的子记录也会自动删除 相当于级联删除 如果指定no action和cascade都会报错 因为还有子记录所以无法删除该记录 set nul允许删除父记录并且l会将子表中与父表关联的字段设置为null

On Update 只有两个选项 no action/restrict 它们在更新和删除时并没有区别:如果与子表关联不允许删除

lishixinzhi/Article/program/DB2/201311/21928

使用 MQT物化查询表(Materialized Query Tables MQT)

MQT 的定义基于查询的结果 MQT 可以显著提高查询的性能 本教程将介绍 MQT 总结表(summary table)和 staging 表 并通过一些实用的例子展示如何创建和使用物化查询表

MQT 是基于查询的结果定义的一个表 MQT 中包含的数据来自 MQT 定义所基于的一个或多个表 总结表(也称自动总结表[AST])对于 IBM DB for Linux UNIX and Windows 的用户来说应该感到比较熟悉 它们可以看作是特殊的 MQT fullselect 是总结表定义的一部分 它包含一个 GROUP BY 子句 该子句总结 fullselect 中所引用表中的数据

您可以将 MQT 看作一种物化的视图 视图和 MQT 都是基于一个查询来定义的 每当视图被引用时 视图所基于的查询便会运行 但是 MQT 实际上会将查询结果存储为数据 您可以使用 MQT 中的这些数据 而不是使用底层表中的数据 MQT 可以显著提高查询的性能 尤其是提高复杂查询的性能 如果优化器确定查询或查询的一部分可以用一个 MQT 来解决 那么查询就可以被重写以便利用 MQT MQT 可以在创建表时定义 可以定义为由系统维护 也可以定义为由用户维护

这种 MQT 中的数据是由系统维护的 当创建这种类型的 MQT 时 可以指定表数据是 REFRESH IMMEDIATE 还是 REFRESH DEFERRED 通过 REFRESH 关键字可以指定如何维护数据 DEFERRED 的意思是 表中的数据可以在任何时候通过 REFRESH TABLE 语句来刷新 系统维护的 MQT 不管是 REFRESH DEFERRED 类型的还是 REFRESH IMMEDIATE 类型的 对它们的插入 更新或删除 *** 作都是不允许的 但是 对于 REFRESH IMMEDIATE 类型的系统维护的 MQT 可以通过 对底层表的更改(即插入 更新或删除 *** 作)来更新

lishixinzhi/Article/program/DB2/201311/21922

1首先将数据库服务端的数据库映射到客户端(因为使用ODBC的原因)

映射命令如下:

Db2cmd

Db2

//将远程节点19216880207:50001映射为node207本地节点

catalog tcpip node node207 remote 19216880207 server 50001

//映射数据库zcldb到本地node207节点

catalog database zcldb at node node207

2新增ODBC,连接到本地DB2映射数据库

3应用程序连接ODBC

连接字符串:

<add name="DB2ConnectionString" connectionString="driver={IBM DB2 ODBC DRIVER};DSN=localdbname;UID=user;DBALIAS=localdbname;MODE=SHARE;PWD=password;" providerName="SystemDataOdbc"/>

要想的全面的了解DB2的话,可以先从DB2的一些认证的学习开始。 首先是基础的DB2 730

如果你有一些数据库的基础的话,学习DB2也就不会太难。

DB2的话可以看看DB2 730考试的教程, 这个在DeveloperWorks上面有中文的翻译,

>

1、零基础,想要自学数据库的话,觉得起步阶段首选《数据库系统概念》这本书,因为这本书比较系统且综合全面。里面包含了数据模型、关系模型、基于对象的数据库以及XML、数据存储和查询、事务管理、数据库系统体系结构等各方面的相关内容。相当地直观易懂,里面的有些内容运用了结构清晰的图示和示例来取代形式化的证明。

2、然后,需要选择一个具体的数据库产品学习,比如常见的Access、SQL-Server、MySQL、Oracle、DB2,不同的数据库产品之间区别很大的,每一种数据库都有与之相应的经典书籍,官方也有那些入门文档。自己到网上搜对应的数据库名字就能找到了。当然,如果你想快餐式入门,那就看些视频或者国内的一些什么XXX从入门到精通、XX天精通XXX之类的书吧!

3、现在常见的数据库大部份都是关系型数据库,不管是理论和 *** 作基本都是一样的,如果从 *** 作和易学的角度来说,SQL SERVER还是比较容易上手的,网上的资料和各种书籍也不少,但是如果数据量大,数据库的稳定性来说,Oracle还是比较要强一点的。你就看自己的情况来选择吧!

3、总之,学习数据库,和学习其他电脑知识一样,要注重实践,也就是要上机实习。先学习一些数据库的基本概念,然后一边看书,一边上机,是个很好的方法。在网上去找一些有关的视频教程,跟着视频学习,会轻松一些。学习知识,关键在于持之以恒,这样才会有好的成绩。

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。

参考资料:

数据库-百度百科

DB2连接远程数据库实例的步骤

一: 开始菜单--------运行--------输入”db2cmd”,进入DB2命令行处理器,如下图:

二:输入”db2”,进入命令处理状态,如下图:

三:输入

CATALOG TCPIP NODE nodeone REMOTE 192910764 SERVER 50000

remote_instance db2admin

注:其中nodeone为自己取的节点名称,192910764为远程数据库的IP地址,db2admin为远程数据库的实例结果如下:

四:输入

CATALOG DB RONESERV AS testdb AT NODE nodeone

注:其中RONESERV为远程数据库的名称,testdb为该远程数据库在本地机器上的别名,nodeone为步骤三中我们建立的节点名称

五:此时即可像 *** 作本地数据库一样 *** 作远程数据库了,输入:

connect to testdb user db2admin using lianxi

注:其中testdb为我们在步骤四中为远程数据库指定的别名,db2admin为远程数据库的用户名,lianxi为远程数据库的密码

此时您可看到,DB2的控制中心能像 *** 作本地数据库一样 *** 作远程数据库了

以上就是关于教你快速掌握DB2数据库创建外键时的选项全部的内容,包括:教你快速掌握DB2数据库创建外键时的选项、DB2数据库物化视图:MQT物化查询表的使用[1]、db2数据库如何连接等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9453420.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存