约束是什么:

        每个人都在网站或者APP上注册过账号,在注册账号时会限制用户名、密码等格式,如果格式不对就不能注册。在数据库中我们可以通过约束来进行限制,超过约束范围的数据就不能写入。

        约束的种类:

              主键约束:主键列的值不能为空,并且不能重复(主键约束是特殊的唯一约束),有主键约束的列可以被其他表引用,一个表中只能有一个主键约束。

              唯一约束:有唯一约束的列中的数据不能重复,但可以为空值(NULL)。

              检查约束:限制某个列中的数据的取值范围。

              默认约束:设置默认约束后的列,在不输入数据的情况下,数据库会自动显示我们设置的默认值。

              外键约束:外键约束和主键约束是搭配使用的,外键约束列中的数据范围是在引用的主键列之中的,不得超出主键列的范围(也就是外键列中的数据只能是主键列中存在的值),外键列的数据类型要和主键列的一样。

  如何创建约束:

          主键约束:鼠标右键点击要创建主键约束的列名,再点击设置主键就可以了。

  

             唯一约束:和上面一样,鼠标右键点击需要创建唯一约束的列

  

                    然后点击索引/键,把类型后面的索引改成唯一件就可以了。

   

              检查约束:同上,点击CHECK(检查)约束

    

                先添加,再点击表达式后面的文本框就可以创建主键约束了。

    

                默认约束:在设计表的下面,就有默认值的设置框,在后面的文本框添加默认值就可以了。

    

                外键约束: 

                (1)右击要创建约束的表,在弹出的快捷菜单中选择“设计”命令;

                (2)右击该表中的某一列,在弹出的快捷菜单中选择“关系”命令,弹出“外键关系”对话框,单击“添加”按钮,添加要选中的关系;

                (3)在“外键关系”对话框中,单击“表和列规范”文本框中的“...”按钮,选择要创建外键约束的主键表和外键表;

                (4)在“表和列”对话框中,设置关系的名称,然后选择外键要参照的主键表及使用的字段。最后单击“确定”按钮,返回“外键关系”对话框中。

            

    常用约束示例:

          主键约束:一般情况下,一张表中的第一列(编号列)会被设置为主键列,因为Sql  Server中只允许一张表描述一件事情,所以我们在其他表用外键引用该表的内容时就只需引用该表的主键列的序号就可以了。

          检查约束:在我的作业中,最多的就是约束性别只能输入男或女,代码为:sex='男' or sex='女'(此处定义性别列名为sex,注意:字符一样要用单引号引起来,数据库里的逻辑是or and not ,并不是程序里的|| && !)。还有就是约束数据长度,如电话号码,身份证号码(这两个还要唯一),约束长度就要用到函数len()了,代码为: 电话号码:len(tel)=11  身份证号码:len(ID)=18,括号里的就是列名。

          默认约束:设置默认约束只需在默认值后面的框中输入默认值就可以了。但要把一个时间设置为默认时间(就是当前时间)就得用函数,即在框中输入:getdate() 即可。

          主键约束:在创建主键约束时需要注意的就是,(1)不能把要引用的对象表搞错,(2)主键和外键要对应,(3)主键和外键的数据类型必须一致。

想了解更多加我QQ吧!1289747698.等你哟!

Sql Server——约束的更多相关文章

  1. Sql Server约束的学习二(检查约束、默认约束、禁用约束)

    接上一篇的Sql Server约束学习一(主键约束.外键约束.唯一约束) 4.检查约束 1)检查约束的定义 检查约束可以和一个列关联,也可以和一个表关联,因为它们可以检查一个列的值相对于另一个列的值, ...

  2. Sql Server约束的学习一(主键约束、外键约束、唯一约束)

    一.约束的分类 1.实体约束 实体约束是关于行的,比如某一行出现的值不允许出现在其他行,例如主键约束. 2.域约束 域约束是关于列的,对于所有行,某一列有那些约束,例如检查约束. 3.参照完整性约束 ...

  3. SQL Server - 约束 CONSTRAINT

    总结 约束放置在表中,以下五种约束: NOT NULL 非空约束C 指定的列不允许为空值 UNIQUE 唯一约束U 指定的列中没有重复值,或该表中每一个值或者每一组值都将是唯一的 PRIMARY KE ...

  4. Ms SQL Server 约束和规则

    一.SQL约束 约束定义关于列中允许值的规则,是强制完整性的标准机制. 使用约束优先于使用触发器.规则和默认值.查询优化器也使用约束定义生成高性能的查询执行计划. 1:类型 约束的类型一共分三种 域约 ...

  5. SQL server约束

    约束的概念:确保在列中输入有效的值并维护表之间的关系. Primary key约束 功能:primary key(主键约束),一个表中只能有一个,不能有空值,不能有重复值. 创建表时定义约束:字段名 ...

  6. sql server 约束 查找

    --1.主键约束 SELECT tab.name AS [表名], idx.name AS [主键名称], col.name AS [主键列名] FROM sys.indexes idx JOIN s ...

  7. SQL Server 约束的增删改

    1. 非空约束 列的为空性决定表中的行是否可以包含空值.空置(NULL)不同于零(0)/空白或者长度为零的字符串(“”). (1)创建非空约束 create table orders ( docent ...

  8. 温习SQL server

    做了好几年的管理工作,技术上有些退步,现在又一一捡起来啦, 以下最近几天看到的好文章, SQL Server约束 http://blog.csdn.net/qq61394323/article/det ...

  9. Sql Server总结

     主键 主键就是数据行的唯一标识.不会重复的列,才能当主键.一个表可以没有主键,但是会非常难以处理,因此没有特殊理由表都要设定主键.主键有两种选用策略:业务主键和逻辑主键. 业务主键是使用有业务意义的 ...

随机推荐

  1. Redis分布式集群搭建

    Redis集群架构图 上图蓝色为redis集群的节点. 节点之间通过ping命令来测试连接是否正常,节点之间没有主区分,连接到任何一个节点进行操作时,都可能会转发到其他节点. 1.Redis的容错机制 ...

  2. which 命令详解

    一.which 作用: which 命令用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录, which 命令会在环境变量$PATH 设置的目录里查找符合条件的文件.也 ...

  3. ADB 安卓开发配置环境

    下载完后将名称中含有adb的文件,和fastboot.exe复制到 c:/windows/system32目录 或c:/windows/system64目录(看自己电脑系统配置 如电脑64操作系统就写 ...

  4. css半透明边框

    html <div class="parent"> <div class="translucent">I am Bob</div& ...

  5. Hyperledger Fabric 1.0 从零开始(十二)——fabric-sdk-java应用

    Hyperledger Fabric 1.0 从零开始(十)--智能合约 Hyperledger Fabric 1.0 从零开始(十一)--CouchDB 上述两章,最近网上各路大神文章云集,方案多多 ...

  6. Java 控制台输入数字 输出乘法表(代码练习)

    最近,回忆了一些刚学习Java时经常练习的一些小练习题.感觉还是蛮有趣的,在回顾时想起好多学习时的经历和坎坷,一道小小的练习题要研究半天,珍重过往,直面未来.下面贡献代码,Java 控制台输入数字 输 ...

  7. commons - lang(1) StringUtils

    分享几个关于StrngUtils的几个实用的方法(以下方法中省略了参数) 1.isBlank() 这个方法用来判空,包括null和空字符串,之前自己写的时候都是str != null &&am ...

  8. (6综合实验)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练

    从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练 1综述http://www.cnblogs.com/jsxyhelu/p/7907241.html2环境架设http://www.cn ...

  9. Java集合系列[1]----ArrayList源码分析

    本篇分析ArrayList的源码,在分析之前先跟大家谈一谈数组.数组可能是我们最早接触到的数据结构之一,它是在内存中划分出一块连续的地址空间用来进行元素的存储,由于它直接操作内存,所以数组的性能要比集 ...

  10. 小乔注:java关键字static

    static是java中又一重要的关键字,在一定环境下使用,可以提高程序的运行性能,优化程序的结构.其主要应用有以下几方面: 1.static修饰的成员变量,称为类变量/静态变量,以实现所有对象对该成 ...