码农小汪-SQL 图形界面设计约束,unqiue,check Default Foreign

怎么说呢,这个东西并不是经常的使用,慢慢的记不住怎么玩得啦,网上找的资料,复习复习哈!

SQLServer中有五种约束,Primary Key约束、Foreign Key约束、Unique约束、Default约束和Check约束,今天使用SQL

1、Primary Key约束

在表中常有一列或多列的组合,其值能唯一标识表中的每一行。

这样的一列或多列成为表的主键(PrimaryKey)。一个表只能有一个主键,而且主键约束中的列不能为空值。只有主键列才能被作为其他表的外键所创建。

创建主键约束可以右键单击表,选择设计。

选中要创建主键的列,然后单击上面的小钥匙。

也可以右键需要创建主键的列,然后单击小钥匙。

2、Foreign Key约束

外键约束是用来加强两个表(主表和从表)的一列或多列数据之间的连接的。创建外键约束的顺序是先定义主表的主键,然后定义从表的外键。也就是说只有主表的主键才能被从表用来作为外键使用,被约束的从表中的列可以不是主键,主表限制了从表更新和插入的操作。

右键单击需要设置外键的列(此时的表是作为从表在外键中出现),选择关系。

接下来点击添加–>表和列规范。

在主键表中选择主表和主表的主键列。

设置完后保存即可。

3、Unique约束

唯一约束确保表中的一列数据没有相同的值。与主键约束类似,唯一约束也强制唯一性,但唯一约束用于非主键的一列或者多列的组合,且一个表可以定义多个唯一约束。

右键单击要设置的列选择索引/键。

然后单击添加按钮。

选择需要设置的列,可以是一列也可以是多列的组合。

关闭并保存设置。

4、Default约束

若在表中定义了默认值约束,用户在插入新的数据行时,如果该行没有指定数据,那么系统将默认值赋给该列,如果我们不设置默认值,系统默认为NULL。

以学生信息表为例,在表设计器中,为性别sex列填写默认值男。

5、Check约束

Check约束通过逻辑表达式来判断数据的有效性,用来限制输入一列或多列的值的范围。在列中更新数据时,所要输入的内容必须满足Check约束的条件,否则将无法正确输入。

以学生信息表中的sex为例,我们要限制sex列的值只能为男或女。

关闭并保存设计。

致此,数据库中的五种约束情况又复习了一遍,约束确保了数据库中数据的完整性,但只有约束是远远不够的。

时间: 2024-10-18 00:54:40

码农小汪-SQL 图形界面设计约束,unqiue,check Default Foreign的相关文章

码农小汪-synchronized

synchronized 英 ['s??kr?na?zd] 美 ['s??kr?na?zd] 同步的 网络 同步; 关键字; 同步锁 同步的原理 monitor 监测仪;  显示屏,屏幕; JVM规范规定JVM基于进入和退出Monitor对象来实现方法同步和代码块同步,但两者的实现细节不一样.代码块同步是使用monitorenter和monitorexit指令实现,而方法同步是使用另外一种方式实现的,细节在JVM规范里并没有详细说明,但是方法的同步同样可以使用这两个指令来实现.monitoren

码农小汪-设计模式之-命令模式

大话设计模式的例子讲的非常的好,理解起来也方便!有时候忘了.想到这些特殊的例子感觉就是特别爽. 烤羊肉串带来的思考! 路边摊羊肉串: 老板,我这里排的比较先啊,我最先给钱.老板这个没有熟啊.我的是 辣的啊!老板没有放盐啊!场面混乱,已经分不清谁是谁的啊,人太多了.烤肉的质量也受到了影响,心情不好也就不好啊.烤肉的人心情受到了顾客的影响. 店面的烤肉 服务员,给我来两串羊肉串,2鸡翅,啤酒两瓶. 鸡翅没得啦,点别的吧,肉精吧.辣一点. 两者的比较啊: 路边的生意不稳定,往往就是那几个时间,客源不固

码农小汪-struts2学习2-Structs2简单使用流程

从第一篇,我们简单的指导了,整个大致的流程之后我们可以创建使用一个简单的步骤需要知道涩.虽然现在的编译器已经给了我们足够好的支持,但是还是需要知道的涩. structs2 简单的创建步骤 安装 Struts2的入口的配置文件,这个过滤器,让我们的整个框架在web上工作 filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.FilterDispa

码农小汪-Hibernate学习8-hibernate关联关系注解表示@OneToMany mappedBy @ManyToMany @JoinTable

近期我也是有点郁闷,究竟是程序中处理关联关系.还是直接使用外键处理关联关系呢?这个的说法不一致!程序中处理这样的关联关系的话.自己去维护这样的约束.这样的非常乐观的一种做法!或者是直接在数据库中处理这样的直接的外键关联,悲观的做法!刚刚看到个帖子.有的公司表中一个外键都没得.直接在程序中处理这样的关联关系.假设在Hibernate中处理外键关系的话.我们首先得有个主表的对象吧,然后在创建外键.感觉有点啰嗦.为啥不直接操作呢! 我仅仅要晓得你这个Id是外键即可了.各有各的说法.我想你也在思考这个问

码农小汪-spring框架学习之9-基于 Java 的配置元数据 @ImportResource

基于 Java 的配置元数据 Spring 新功能 Java-cofiguration 支持@Configuration 类注解和@Bean 方法注解@Bean 注解用于表明一个方法将会实例化.配置.初始化一个新对象,该对象由Spring IoC 容器管理.大家都熟悉 Spring 的< beans/>XML 配置, @Bean 注解方 法和它一样.可以在任何 Spring @Component 中使用@Bean 注解方法,当然了,大多数情况下,@Bean 是配合@Configuration

码农小汪-Spring MVC 处理器拦截器详解

处理器拦截器简介 spring Web MVC的处理器拦截器(如无特殊说明,下文所说的拦截器即处理器拦截器)类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理 常见应用场景 日志记录:记录请求信息的日志,以便进行信息监控.信息统计.计算PV(Page View)等. 权限检查:如登录检测,进入处理器检测检测是否登录,如果没有直接返回到登录页面: 有时候系统在某段时间莫名其妙的慢,可以通过拦截器在进入处理器之前记录开始时间,在处理完后记 录结束时间,从而得到该请求的处理

码农小手册1

把系统中复杂和经常变化的模块单独封装. 抽象的好处在于 你设计的时候 能忽略无关的细节. 封装帮助你管理 系统的复杂度的方法在于不让你看到那些复杂度. 在设计类的时候,要养成一个习惯. 问自己 “我该隐藏些什么字段和函数” 你会惊奇的发现,有很多棘手的设计难题都会在你面前化解. 好的程序设计所面临的最重要挑战之一就是适应变化.目标应该是把不稳定的区域隔离出来.从而把所带来的影响限制在一个子程序.类或者包的内部. 方法是: 1.找出看起来容易变化的模块. 2.把容易变化的模块分离出来.把容易变化的

哪些码农小习惯预示着高薪资?

原文链接 最近,Stack Overflow 发布了一篇 2017 开发者调查报告,分别从技能.工具.学习趋势等方面进行了数据统计,此次有超过 64,000 名开发者参与调查.分析这些数据,我们得到一个很有趣的结论:使用空格缩进的开发者比使用 TAB 缩进的开发者工资更高,是不是觉得有点扯?以下是统计结果截图: 你用Tab还是空格来处理代码缩进 在处理代码缩进时,使用Tab和空格都是可以的,在不同的IDE环境下,Tab对应的空格数也是不一样的,有的是2个,有的是4个,有的甚至8个.你用Tab还是

转:码农翻身全年文章精华

在码农翻身公众号写了一年多, 最大的体会就是:原创真心不易! 每天思考的最大问题就是: 下一篇文章写啥? 在大家的支持和鼓励下,还是坚持了下来,  回头看看走过的路,这一年过得还算充实. 很快就要过年了, 我也要休息一下, 春节后重新出发 ! 我把这一年来的精华文章整理了一下,作为节前的最后一篇, 欢迎转发分享. 再次感谢大家一年来的陪伴, 预祝大家春节快乐,万事如意! 大话编程 我是一个线程 我是一个Java class Javascript: 一个屌丝的逆袭 Java:一个帝国的诞生 JSP