外键-我的天啊.SSMS中的那个 数据库关系图 和 视图 到底有什么不同?

问题描述

我的天啊.SSMS中的那个 数据库关系图 和 视图 到底有什么不同?

在数据库关系图中 可以连接 用主键设置和别的数据库设置外键.这个我知道.但是这个外键到底有什么用了?
我在视图中同样样连接2个表.(随便问一下为什么左边的那个连接没有小钥匙和无限的符号...)我看了下连接如果用SQL语句写的话就是相当于INNER JOIN.我完全晕了.那我在用SELECT 去做查询的时候直接写INNER JOIN 不就行了?为什么还要去 数据库关系图 设置好关系图..比如这样..

解决方案

视图相当于虚拟的表,可以直接查询。而外键的关系不能直接作为查询的对象。

时间: 2024-10-21 19:30:29

外键-我的天啊.SSMS中的那个 数据库关系图 和 视图 到底有什么不同?的相关文章

oracle修改一个表中的主键字段值,与其外键关联的另一个表中的相应字段值也改变

问题描述 oracle修改一个表中的主键字段值,与其外键关联的另一个表中的相应字段值也改变 oracle 中修改一个表中的主键字段值,与其外键关联的另一个表中的相应字段值也改变? 有如下两张表,表a和表b 表a 结构如下: ID Name age 1 lisi 18 2 wangwu 21 3 sunliu 34 4 yiliu 24 ... ... ... 其中ID字段为表a主键且自增 表b结构如下: CID CNAME ID 1 aaaaa 1 2 bbbbb 2 3 cccccc 4 4

Silverlight中使用递归构造关系图

这两天遇到一个问题,项目中需要在silverlight中使用连接图的方式来显示任务之间的关系,总体有父子和平行两种,昨天在改同事的代码,一直出问题,索性晚上写了一下实现方法. 需求 有一个List对象中存了若干个Task,这些Task对象通过ParentID属性进行关联,现在要求将这个List中的任务使用图的方式形成如父子关系和平行关系的图示例如下图: 实现方法思考 刚开始接到这个任务我就想着递归应该可以搞定了,但是仔细考虑才发现每个任务的子任务需要在一定区域内才行,需要计算子级和子级之间的距离

一起谈.NET技术,Silverlight中使用递归构造关系图

这两天遇到一个问题,项目中需要在silverlight中使用连接图的方式来显示任务之间的关系,总体有父子和平行两种,昨天在改同事的代码,一直出问题,索性晚上写了一下实现方法. 需求 有一个List对象中存了若干个Task,这些Task对象通过ParentID属性进行关联,现在要求将这个List中的任务使用图的方式形成如父子关系和平行关系的图示例如下图: 实现方法思考 刚开始接到这个任务我就想着递归应该可以搞定了,但是仔细考虑才发现每个任务的子任务需要在一定区域内才行,需要计算子级和子级之间的距离

VisualStudio2012中查看项目中类关系图,UML Class Diagram 模板怎么安装?

问题描述 我的VS版本为10.0.30319.1RTMRel的,2012Ultimate中文的,没有那个UMLClassDiagram模板.新建项对话框也看不到ModellingProject,联机也搜不到...怎么解? 解决方案 解决方案二:这里?解决方案三:怎么可能呢,VS2012主版本号是11.(所以测试版也叫VS11Beta)解决方案四:引用1楼mrlen的回复: 这里? ---------------------------额,你装插件了呢?配置可能不一样哦,我那个上下文菜单只有个[查

sql server中的外键约束

server sql server中建立外键约束有3中方式:1.Enterprise Manager中,Tables,Design Table,设置Table的properties,   可以建立constraint, reference key;2.Enterprise Manager中,Diagrams, new Diagrams,建立两个表的关系.3.直接用transact sql语句. 三个方法都需要先建立数据表.-- 创建表author :CREATE TABLE [dbo].[aut

数据-Mysql中设置表的外键的时候报错

问题描述 Mysql中设置表的外键的时候报错 这个是原句子: ALTER TABLE emp ADD CONSTRAINT id_fk FOREIGN KEY (deptno) REFERENCES Dept (deptno); 就是想把emp表的deptno设置为外键,该列的数据引用Dept表的主键列deptno的数据.然后,报错信息如下: Cannot add or update a child row: a foreign key constraint fails (emp.#sql-1a

Java的Hibernate框架中的双向主键关联与双向外键关联_java

一.双向主键关联双向的主键关联其实是单向一对一主键关联的一种特殊情况,只不过要在关联对象的两端的映射文件中都要进行<one-to-one>的配置,另外还要在主映射的主键一端采用foreign外键关联属性. 这里同样使用Person和IdCard来讨论,一个人对应着一个唯一的身份证,而且一个身份证也唯一映射着一个人,所以这就产生了双向的关联关系,Person的主键同样也是IdCard的主键,分别是主键的同时也是外键,这种关联关系成为双向一对一映射,表现到关系模型中可如下图: 图中的两个表采用了主

MySQL外键的设置及作用

外键的作用: 保持数据一致性,完整性,主要目的是控制存储在外键表中的数据. 使两张表形成关联,外键只能引用外表中的列的值! 例如: a b 两个表 a表中存有 客户号,客户名称 b表中存有 每个客户的订单 有了外键后 你只能在确信b 表中没有客户x的订单后,才可以在a表中删除客户x 建立外键的前提: 本表的列必须与外键类型相同(外键必须是外表主键). 指定主键关键字: foreign key(列名) 引用外键关键字: references <外键表名>(外键列名) 事件触发限制: on del

外键开关

最近在做假资料时经常需要删除一些表中的内容.但是: 设置外键后,想删除表中的数据无法删除,这时需删除外键后重建,或找到外键后用 alter table 表名 nocheck 外键名 来暂时屏蔽外键,然后删除.干脆写个存储过程,设置外键的开关.exec fk_switch '表名',0 屏蔽外键exec fk_switch '表名',1 重启外键 /* Usage:exec fk_switch 'tableName',0delete tableName where fieldName = 'abc