SQL 数据库 学习 008 如何通过图形化界面建表 和 建主外键约束

来源:互联网 发布:嵌入式c语言精华 编辑:程序博客网 时间:2024/06/08 16:47

在库里面建表。所以我们现在需要先新建一个库,然后在库里面新建一个表。

所以,先建一个 ,取名为:test

Alt text

输入新建库的名字:test 。 现在点击 确定 按钮。

Alt text

如果你在创建库的时候,遇到了下面这个异常。请查看这篇博客解决问题。

Alt text

新建成功:

Alt text


我们现在在库里面在建表。

Alt text

建表的方式有两种:一种是鼠标点击的方式;一种是输入命令的方式。(但是不推荐鼠标去点。如果你想要这个命令正确的执行成功,并且它很稳定,一般都是使用命令去实现。)


现在我们先来介绍如何使用鼠标来操作:

下面使用点击鼠标的方式(图形化界面 )进行建表:

对着 点击右击,点击 表(T)…

Alt text

Alt text

名这里使用英文,后面选择 数据类型

目前第一个列取名为:emp_ename 。数据类型选择为:nvarchar(MAX) 。(表示的是:一个国际化编码可变的字符串。n 指的是:国际化,对汉字也支持;var 指的是:变量。所以:nvarchar(MAX) 指的是:可以存储汉字的字符串长度可以变化的字符串数据。)。后面的 允许 Null 值,如果你勾选了,意味着这一列的值可以是空的,所以我们不勾选。
其它按照员工表对应的输入。

Alt text

最终建出来的表就是下面这个样子的。(我们现在还没有添加 部门编号,为什么不添加?因为现在我们还没有部门这个表。(所以,如果我们先新建部门表,再建员工表就好了。))

Alt text

nchar 中的 n 指的也是:支持国际化,支持汉字。

现在按 Ctrl + S 保存,将这个表取名为:emp 。 点击 确定 按钮。

Alt text

现在这个 员工 表建立完成。

Alt text

现在,我们就可以在:对象资源管理器 里面看到 test数据库里面的 选单里面多出来一个 dbo.emp 表。

Alt text

如果你没有在这里面看到刚刚新建的 dbo.emp 表。进行下面的操作:(刷新一下,就出现了。)

Alt text

展开 dbo.emp 表,你可以看到:

Alt text

现在还没有添加主键。(刚刚并没有设置主键。)如果没有主键,数据就容易 冗余

举个例子:

在表中添加内容:

Alt text

如果添加的两条记录一模一样,那么得到的数据就 冗余 了。

Alt text

如何添加记录?

数据添加完之后,点击框框中的地方:

Alt text

点击后,红色的叹号消失:

Alt text

如果你添加的是冗余的数据,还有在点击执行按钮,叹号才会消失。

Alt text

在设计字段的时候,编号就是不能重复的,但是上面的两条冗余数据导致了编号的重复,所以现在编号就不能设置为主键了。不信,我们现在来试试。

对表的结构进行修改,点击 设计

Alt text

emp_id 属性 右键 ,选择 :设置主键(Y)

Alt text

然后保存。(保存就会出错。)

Alt text

目前数据里面的 emp_id 属性有重复的数据,现在你又想将其设置为不可重复的主键,所以就出错了。

现在,我需要将表里面的 emp_id 属性里的数据进行修改。目的就是:不能让里面的数据内容重复。(我使用图形界面(就是鼠标点击)的方式修改不了表里面的数据;我们修改数据使用敲命令的方法也是修改不了的,这说明了:数据不能有冗余。)

我们现在只能将两条数据都删除。(使用图形界面(就是鼠标点击)的方式删除不了的;我们修改使用命令来删除)

新建一个查询文件(.sql 后缀的文件)。

Alt text

在里面输入下面的命令:

delete from emp

点击 执行 按钮。

现在数据还在。

Alt text

点击 执行 图标。

Alt text

数据消失。(这个软件真是好弱啊!)

Alt text


折腾了一顿。

下面使用点击鼠标的方式(图形化界面 )进行建主外键约束:

所以,我们应该先设置主键,然后 Ctrl + S 保存。接下来在添加数据。这才是正确的步骤。

接着添加,数据:

Alt text

现在有了主键,导致了:主键里面的数据不能一样。


现在,我们在写一个表: 部门表 。并添加下面的数据,同时将 dept_id 属性设置为 主键

Alt text

Ctrl + S 保存此表,命名为:dept

注意:数据是中文的无所谓。但是你不要把表的结构和库的结构也写成中文。

现在我们来到 emp 表。添加 dept_id 这个属性(注意:这个属性的 允许Null值要勾选)。(目的是:将其设置为外键

然后右键,点击 关系

Alt text

然后点击 添加

Alt text

点击 下面红框框里面的按钮。

Alt text

Alt text

设置为下面这个样子。将 dept_id 这个属性设置为 外键

解释一下:存在外键的表叫做 外键表,(外键:就是来自于另外一个表的主键)。 emp(员工) 表里面有一个dept_id (部门编号)这个外键,它就是 dept (部门)表的主键。

Alt text

点击 确定, 再点击 关闭。现在按 Ctrl + S 保存,会弹出下面的窗口。点击 按钮。

Alt text


我现在在 dept (部门)表里面添加数据。

Alt text

现在再来到 emp (员工)表里面,给dept_id(部门编号)(外键) 添加数据。(如果你打开emp表发现里面现在还没有dept_id这个属性,就关闭这个页面,重新打开这个emp表,就有了。(这个软件正弱!))

Alt text



我们来总结一下:应该先建部门表,然后在建员工表,是最好的。也就是说:先建主键表,然后再将外键表(因为外键表有数据来自另外的表(主键表))。


请访问:http://www.aobosir.com/

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 如果欠了3w不敢和家里说怎么办 大四学生欠了3w该怎么办 房子付了首付贷款贷不下来怎么办 浙江嵊泗人在金华丢了身份证怎么办 一证5号够了怎么办新卡 微信号被盗实名认证是自己的怎么办 苹果微信登录显示被盗风险怎么办 在诈骗公司上班被公安抓了怎么办 在国外护照不小心撕坏了怎么办 在俄罗斯护照超期拉黑应该怎么办 俄罗斯五年定居护照丢了怎么办 百家号文章质量分一直在下降怎么办 如果在韩国把护照弄丢了怎么办 坐亲戚的车出了车祸受伤怎么办 出了车祸受伤对方不拿医药费怎么办 如果找你买保险的不在了保单怎么办 赴美生子父母一方是绿卡怎么办 农保报销需要居住证过期了怎么办 有上海户口但没有户口本怎么办护照 签证用的旧护照丢失了英签怎么办 买的动迁房房东不肯过户怎么办 身份信息在qq邮箱泄露了怎么办 别人用我的身份证贷款不还怎么办 做兼职被骗了身份证泄露了怎么办 qq绑定的手机号被别人换了怎么办 银行卡丢失不知道卡号和密码怎么办 美团景点门票过了退款期怎么办 我的手机汽车之家无法看视频怎么办 来事泡温泉细菌感染外阴瘙痒怎么办 西澳大学语言班没通过怎么办 银行入职培训理论考试不合格怎么办 去泰国旅游不会泰语和英语的怎么办 老板不发工资怎么办没签合同的 3d模型导进去材质丢失怎么办 七日杀显示载入中之后进不去怎么办 进京证过期了车在北京怎么办 微信打字时剪切的东西丢了怎么办 错过了医师定期考核报名时间怎么办 大学档案在自己手里放多年怎么办 档案在自己手里10年了怎么办 快递地址区域划分写错了怎么办