sql关系数据库表的创建

来源:互联网 发布:wifi跑字典软件 编辑:程序博客网 时间:2024/06/07 15:57

学会sql数据库关系图
2012-08-14 0 个评论 收藏 我要投稿

学会sql数据库关系图

很久以前就知道微软的Petshop的很经典,昨天抽出时间去学习,一开始还真的不适应,什么成员资格,还真的看不太懂,运行petshop想从登陆学起,但是用户名和密码都不知道,后来发现有更注册的页面,自己注册了一个页面,才发现还得从数据库出发。花了这么多时间最终还是回到了数据库,但是数据库中一张一张的表格找不到脚本,也不是自己设计的数据库,完全没有一点头绪,后来突然想起来sql有个数据库关系图,可以很快的适合数据库程序员很快的掌握数据库表之间的关系。于是开始了我的百度之旅,关于数据库的关系图的文章还真的很少,于是我开始根据petshop,然后建立数据库关系图,开始掌握数据库关系图。我点击MSPetShop4Services这个数据库,存放着用户的信息。但是原版的是没有数据库关系图。 www.2cto.com

  首先我们自己动手来新建一张数据库关系图吧,找到相应的数据库(图1),在第一行中有个数据库关系图,我们右击选择新建数据库关系图(N),如图2:

这里写图片描述      (图1)
 这里写图片描述      (图2)
  这个时候会跳出一个添加表对话框,这里我们可以选择我们想要的表,如果想要全部选中,则这样操作,先鼠标点重第一个然后按住shift+鼠标点重最后一个,来完成操作。最后表格位子整理一下,然后ctrl+s保存一下,数据关系图的名字,那么数据库关系图基本建立好了。接下来就是分析了。
这里写图片描述
   
(添加表对话框图)  
  这里写图片描述                      (选中表对话框图)
www.2cto.com

这里写图片描述
  整个MSPetShop4Services数据库的关系图。整个这幅图,是不是看着一张一张的表格了解表之间的关系舒服多了,当然我们还是要看懂整个表的意思,首先最上面的是表名,下面的都是字段,有些字段左边有个钥匙,那是主键的意思。在表之间有个线连着就说明这两个表之间存在主键和外键的关系,其中一半都有钥匙的指的是主键,一个无穷大的符号表示的外键。但是不知道细心的朋友有没有发现一个问题,比如说aspnet_Paths和aspnet_PersonalizationAllUsers表之间的线的两端都是钥匙的,我也找了很久资料没有找到,于是自己写代码测试了,到底是什么意思。
通过自己的代码了解图中线的含义:
我自己定义是一个学生选课的关系图:
sql脚本代码如下:

CREATE TABLE Student
(
[Sid] INT NOT NULL PRIMARY KEY, –学生编号
SNAme VARCHAR(10)   NOT NULL –学生姓名
)

CREATE TABLE Course(
[Cid] INT NOT NULL PRIMARY KEY, –课程编号
CName VARCHAR(10) NOT NULL –课程名
)

CREATE TABLE SC(
[Sid] INT NOT NULL,
[Cid] INT NOT NULL,
Grade INT NOT NULL, –成绩
FOREIGN KEY([SID]) REFERENCES Student2([Sid]),
FOREIGN KEY([CID]) REFERENCES Course2([Cid])
) www.2cto.com

  出来的关系图如下:
这里写图片描述

  这个数据图是我们知道的主键外键的关系,也是符合我们思维的。
  接着我在代码里面改了一行代码,图就变调了,代码如下:

CREATE TABLE Student2
(
[Sid] INT NOT NULL PRIMARY KEY, –学生编号
SNAme VARCHAR(10) NOT NULL –学生姓名
)

CREATE TABLE Course2(
[Cid] INT NOT NULL PRIMARY KEY, –课程编号
CName VARCHAR(10)      NOT NULL      –课程名
)

CREATE TABLE SC2(
[Sid] INT NOT NULL PRIMARY KEY,
[Cid] INT NOT NULL,
Grade INT NOT NULL, –成绩
FOREIGN KEY([SID]) REFERENCES Student2([Sid]),
FOREIGN KEY([CID]) REFERENCES Course2([Cid])
) www.2cto.com
  对应的关系图如下:
这里写图片描述

  我相信你们看到了吧,两个钥匙的线段。好了那我们应该了解了吧,我们可以得出这样的结论,如果一个表中是主键,而另一个表中却是普通的字段,那显示的效果是一个钥匙一个无穷大,钥匙指向主键,无穷大指向外键,但是当外键在另一张表中也作为主键,那此时无穷大也变为了钥匙。此时我们不能看线了。那要怎么分析主键和外键呢?别急往下看。这里介绍两个方法,第一个比较简答,我们把鼠标放到这个线上面,他会跳出一行提示,在前面的表名是主键,后面的是外键,最后的是关系的名字(这个是我自己看表得出的结论),还有一个方法,但是我们事先也要用这个方法,知道这个关系的名字,然后点击两个表中随便的哪一张表,右击选择关系,找到相应的关系名,然后选择右边的表和列规范,里面就写明了主外键的关系了。好了就写到这里了。
  总结:
  遇到难的我们先不要怕,从最基本的做起,也可以自己建立测试数据来验证遇到的新的知识。

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 微信视频对方听不到我的声音怎么办 学生考试传纸条作弊老师应怎么办 苹果手机微信小游戏没有声音怎么办 红米手机游戏下好了安装不了怎么办 小米手机sd卡存储已满怎么办 英雄联盟峡谷之巅资格被收回怎么办 人进监狱之前信用卡没还怎么办 荒野行动资源文件下载卡住了怎么办 荒野行动绑定的手机号停机了怎么办 不小心误点了爱奇艺扣款了怎么办 和别人吵架别人先骂你怎么办 自己人被带到了缅甸黑社会了怎么办 绝地求生忘记复制钥匙激活码怎么办 绝地求生买的钥匙激活码丢了怎么办 蓝河奶粉宝宝吃了不长肉怎么办 苹果ios版本太低激活不了怎么办 脸上被油烫伤了 起了水泡怎么办 皮肤被油烫伤起来个水泡怎么办 去泰国旅游没来得及兑换泰铢怎么办 游戏和安卓 不和 出现黑屏怎么办 邻居把垃圾放在楼梯口不丢怎么办 58热敏小票打印机口松了怎么办 王鹏的眼睛今天起疙瘩了怎么办 背包带子老从肩膀滑下来怎么办 绝地求生用手机流量更新不成怎么办 手机拍的视频在电脑上放不了怎么办 炉石传说手机点登陆游戏闪退怎么办 车到信号屏蔽区一键启动不了怎么办 王者荣耀战队活跃度满了怎么办 win10你的账户已被停用怎么办 电脑一键还原后一直黑屏怎么办? 被打了狂犬疫苗的狗咬伤怎么办 美版苹果7系统坏了怎么办 韩服的球球大作战网络不稳定怎么办 球球大作战号删了找不回来怎么办 队友传足球球的时候接不到怎么办 魅族手机中病毒锁机了怎么办? vbs打开是和文本文档一样怎么办 把电脑注册表删了电脑动不了怎么办 注册表删一项后电脑启动不了怎么办 解压过的过的软件安装包损坏怎么办