关系数据库依赖于主键,它是数据库物理模式的基石。主键在物理层面上只有两个用途:惟一地标识一行。作为一个可以被外键有效引用的对象。索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。下面是主键和索引的一些区别与联系。1. 主键一定是唯一性索...
分类:
数据库 时间:
2014-09-24 14:08:06
阅读次数:
234
方式一: 通过as 指定大写重名列的别名 方式二: 命名数据库中表名时每个表的主键id要起不同的名称,避免主键重复(但是子表的外键可以和主表的id主键重名,你想啊,从表的外键性质不就是引用主表的主键么,所以就一样喽!)方式三: 指定map类型返回结果方式四: 指定外表的column到本表的r...
分类:
其他好文 时间:
2014-09-24 01:50:55
阅读次数:
215
开始初始化数据的时候要满足下面的条件:1.disable掉目标段表的外键约束2.disable掉目标端表的触发器3.删除目标段表的索引,加快初始化速度4.目标端表结构创建完成源端配置初始化抽取进程GGSCI (db11) 72> edit params IHREMD1 Extract IHREMD1...
分类:
其他好文 时间:
2014-09-24 01:23:45
阅读次数:
472
关于是否使用外键在业界也没有统一的标准,大家争论的焦点是数据一致性和性能上。
支持使用外键方,强调如果不使用外键,数据一致性无法保证,性能消耗可以忽略。
反对使用外键方,数据一致性可以通过程序保证,性能有大问题,数据维护很麻烦,如果是大系统,整个外键的关系就像编制的一张大网。再者开发人员很难真正用好外键。
其实两种观点我都支持,现状是我基本没用过外键。没使用外键会出现...
分类:
数据库 时间:
2014-09-23 22:47:15
阅读次数:
181
根据第二范式,主键是必须的。主键还是是唯一的,主键也被作为外键引用建立表和表之间的关系。从这几个方面讨论主键(数据库是Oracle):
1.主键的命名
最近看到由于架构使用hibernate的原因,导致所有主键的命名是ID,我觉得非常糟糕,如部门表(department),用户表(user),角色表(role),这些表如果关联都是id之间关联,非常难辨认这个叫ID是那张表的,如...
分类:
数据库 时间:
2014-09-23 19:33:55
阅读次数:
220
本节内容多对多关系引入多对多映射关系多对多关联查询1.原生SQL关联查询2.HQL关联查询3.Criteria API关联查询结语多对多关系引入让我们再次回顾在第二篇中建立的数据模型:在图上,我已经清晰的标注了表之间的关系,上两篇分析Customer和Order之间的“外键关系”或者称作“父子关系”...
分类:
系统相关 时间:
2014-09-21 17:46:20
阅读次数:
397
在上篇文章中学习了如何在页面中显示相关数据,本节中将学习如何对相关数据进行更新。对于大多数实体关系,可以通过更新外键或导航属性来更新数据,对于多对多关系,Entity Framework不会直接公开连接表,所以你需要通过相应的导航属性来添加和移除实体。
为Courses自定义Create 和Edit 页面
当一个新的course实体被创建时,该实体必须关联到一个已存在的department。要做到这一点,生成的框架代码应该要包括控制器方法和用于选择department的下列列表的Create和Edit视图。...
分类:
Web程序 时间:
2014-09-20 15:28:09
阅读次数:
449
创建数据库命令:createdatabasemydata;//分号不可少创建表:首先要使用命令usemydata;//说明接下来的操作都在mydata下进行创建表:createtabledept(表名)(deptnointprimarykey,denamevarchar(14),locvarchar(13)//最后一句不能再加逗号);表中如何设置外键:重新创建一个表..
分类:
数据库 时间:
2014-09-19 14:00:36
阅读次数:
186
一、插入insert1、主键对数据插入的影响主键是在同一张表中必须是唯一的,如果在进行数据插入的时候指定的主键与表中已有的数据重复的话则会导致违反主键约束的异常。2、外键对数据插入的影响外键是指向另一个表中已有数据的约束,因此外键值必须是在目标表中存在的。如果插入..
分类:
数据库 时间:
2014-09-19 10:18:15
阅读次数:
207
(1)外键的使用:外键的作用,主要有两个:一个是让数据库自己通过外键来保证数据的完整性和一致性一个就是能够增加ER图的可读性有些人认为外键的建立会给开发时操作数据库带来很大的麻烦.因为数据库有时候会由于没有通过外键的检测而使得开发人员删除,插入操作失败.其实这正式外..
分类:
数据库 时间:
2014-09-19 02:21:55
阅读次数:
259