学习SQL数据库关系图(PetShop)

不久前,微软的PetShop非常经典,昨天找时间学习,真的不适合,什么会员,真的不懂,想学习PetShop从登陆运行,但是不知道用户名和密码,后来发现有一个注册页面,他注册了一个网页,是发现从数据库。花了那么多时间,最终返回到数据库,但是数据库表中找到脚本,没有自己的设计数据库,完全没有线索,然后突然想起SQL数据库关系图中,可以很快的数据库程序员快速掌握数据库表的关系的关系。所以我开始我的百度之旅,有几篇关于关系图数据库。所以我开始建立基于PetShop数据库关系图,并开始掌握数据库图表。我点击mspetshop4services数据库和存储用户的信息。但原来的版本是不是一个数据库关系图。

首先,我们将自己创建一个新的数据库图,并找到相应的数据库(图1)。在第一行中,我们有一个数据库图。我们右键单击以选择新的数据库关系图(n),如图2所示:





(图1)(图2)

此时,我们将跳出添加表对话框。这里我们可以选择我们想要的桌子。如果要选择所有的鼠标,我们必须先单击鼠标,然后按住Shift +鼠标,单击最后一个鼠标完成操作。最后,安排表,然后保存Ctrl + s,数据图的名称,然后基本上建立数据库图。接下来是分析。



(添加表对话框图)(复选框对话框)。



整个mspetshop4services数据库图表。这并不是全部,看看表,了解表之间的关系,更舒适,当然,我们还是要看整个表,首先上面的表的名称,以下是一些关键的领域,一个是首要的意义了。表之间有连接线,这表明一个关系的主键和外键之间的两个表之间有,其中有一半关键中的关键,和外键的无限大的符号表示。但不知道细心的朋友发现了一个问题,如两端的线之间的表aspnet_paths和aspnet_personalizationallusersES是关键,我也找了好久才找不到数据,然后写代码来测试,有什么意思呢。

通过自己的代码理解图表中的行的含义:

我自己的定义是学生选课的关系图:

SQL脚本代码如下所示:

复制代码代码如下所示:
建立学生表

{ int不是null主键,学生编号
SNAme VARCHAR(10)不为空-学生姓名


创建表课程(
{ int int不是null主键,-进程号
varchar(10)CNAME不空——课程名称


创建表SC(
{ int int不是null,
{ int int不是null,
等级int不是空的-分数
外键({ }(SID)引用{ Sid })里,
外键({ }(CID)参考course2 { CID })

下图如下所示:



这个数据图是我们知道的钥匙和钥匙之间的关系。这也符合我们的想法。

然后我在代码中更改了一行代码,并且映射了音调。代码如下:

复制代码代码如下所示:
创建表格里

{ int不是null主键,学生编号
SNAme VARCHAR(10)不为空-学生姓名


创建表course2(
{ int int不是null主键,-进程号
varchar(10)CNAME不空——课程名称


创建表的SC2(
{ int非空主键,
{ int int不是null,
等级int不是空的-分数
外键({ }(SID)引用{ Sid })里,
外键({ }(CID)参考course2 { CID })



相应的关系图如下所示:



我相信你看到的,这两个键就行了。好了,我们应该了解,我们可以得出这样的结论,如果一个表的主键,而另一台普通的领域,显示效果是一个关键的关键点到无穷远处,主键,外键到无限大,但也在关键主键时,另一个表,它现在变成无限的关键。我们不能看到这个时间线。你怎样分析主键和外键不要往下看,这里有两个方法,第一个简短的回答,我们把鼠标放在上面的线,他会跳出来一条线的前端,表名是主要的关键,在ForeignKey,姓(这是我自己的观察结论),有一个的方式,但我们在使用这种方法,知道关系的名称,然后单击两表,只是一个表,点击右键并选择相应的关系,发现关系的名称,然后选择在标准的右边的表和列,其中主外键关系。把它写在这里是对的。

总结:
我们不怕遇到困难,从最基本的开始,你也可以建立测试数据来验证新知识。