约束
非空约束 --NN,ont null constraint
必须填写数据不能为空
--指定表 Student 添加名为NN_Student_sClassId非空约束(指定列名sClassId),括号输入表达式
alter table Student add constraint NN_Student_sClassId check(sClassId is not null)
 
主键约束 --PK,primary key constraint
唯一且不为空
--指定表 Student 添加名为PK_Student_sId主键约束(指定列名sId)
alter table Student add constraint PK_Student_sId primary key(sId)
 
唯一约束 --UQ,unique constraint
唯一,允许为空,但是同样的数据只能出现一次
--指定表 Student 添加名为UQ_Student_sName唯一约束(指定列名sName)
alter table Student add constraint UQ_Student_sName unique(sName)
    
默认约束 --DF,default constraint
设置默认值
--指定表 Student 添加名为DF_Student_sName默认约束(指定列名sBirthday),获取当前日期
alter table Student add constraint DF_Student_sName default(getdate()) for sBirthday
 
--指定表 Student 添加名为DF_Student_sName默认约束(指定列名sBirthday),指定日期  
alter table Student add constraint DF_Student_sName default('1995-12-12') for sBirthday  
--指定表 Student 添加名为DF_Student_sName默认约束(指定列名sSex),指定性别
alter table Student add constraint DF_Student_sSex default('男') for sSex     
 
检查约束 --CK,check constraint
设置范围以及格式限制
--指定表 Student 添加名为 CK_Student_sSex检查约束(指定列名sSex),限制为'男'或者'女'
alter table Student add constraint CK_Student_sSex check(sSex='男' or sSex='女')   
--指定表 Student 添加名为 CK_Student_sSex检查约束(指定列名sAge),限制为0-100之间的数字
alter table Student add constraint CK_Student_sAge check(sAge>=0 and sAge<=100)   
 
外键约束  --FK,foreign key constraint
表关系
alter table Student add constraint Fk_Student_sClassId foreign key(sClassId) references Class(cId)
--指定表Student添加sClassId外键为Class的主键cId
on delete cascade on update  cascade --级联删除 --级联更新
 
删除约束
alter table Student drop Constraint NN_Student_sClassId    --删除指定表中的约束
 
创建表时设置列的约束
create table Users
(
     uId int identity(1,1) primary key,--创建了一个列名为 uId的列,并设置了主键约束
     uName nvarchar(8) not null unique,创建了一个列名为uName的列,并设置了唯一约束
     uSex nchar(1) not null check(uSex='男' or uSex='女') default('男'),--设置了非空和默认约束
     uBirthday datetime,--创建了一个列名为uBirhday的列,并没有设置约束
     uAge int not null check(uAge>0 and uAge<100) default(18),--设置了非空、检查、默认约束
 )

SQL Server 数据表代码创建约束的更多相关文章

  1. 关于SQL Server数据表的五中约束

    1.主键约束(PRIMARY KEY) 主键约束可以在表中定义一个主键值,它可以唯一确定表中每一条记录,每个表中只能有一个主键约束(只能有一个主键约束的意思并不是说受主键约束的列只能有一个),并且受主 ...

  2. [SQL]SQL Server数据表的基础知识与增查删改

    SQL Server数据表的基础知识与增查删改 由张晨辉(学生) 于19天 前发表 | 阅读94次 一.常用数据类型 .整型:bigint.int.smallint.tinyint .小数:decim ...

  3. 修改SQL Server数据库表的创建时间最简单最直接有效的方法

    说明:这篇文章是几年前我发布在网易博客当中的原创文章,但由于网易博客现在要停止运营了,所以我就把这篇文章搬了过来,因为这种操作方式是通用的,即使是对现在最新的SQL Server数据库里面的操作也是一 ...

  4. C#向sql server数据表添加数据源代码

    HoverTree解决方案 学习C#.NET,Sql Server,WinForm等的解决方案. 本文链接http://hovertree.com/h/bjaf/0jteg8cv.htm 使用的技术. ...

  5. 关于SQL Server数据表的五种约束

    1.主键约束(PRIMARY KEY) 主键约束可以在表中定义一个主键值,它可以唯一确定表中每一条记录,每个表中只能有一个主键约束(只能有一个主键约束的意思并不是说受主键约束的列只能有一个),并且受主 ...

  6. SQL Server数据表设计编辑后无法保存处理办法

    关于使用 SQL Server 企业管理器,表[设计]界面,修改数据表字段或类型无法保存的问题处理过程: 使用SQL Server数据库的你是否遇到过每次数据库编辑工具内点击设计修改表字段或类型要保存 ...

  7. sql server数据表大小初始化

    sql server表在存储大数据和处理大数据表时,经常会遇到表空间越来越大,有时候会超出应该占有空间大小很多,此时如果表数据是压缩存储的,那么重新执行一下压缩脚本,数据的大小会重新初始化,然后再使用 ...

  8. [SQL SERVER] - 数据表 保存 / 查看 海量文本的方法

    背景 WCF + EF + Sql Server 提供服务,包含一个数据上传功能,该方法接收客户端上传的对象列表(多张表单,每个表单包含千余条相关记录). 瓶颈 WCF 默认有文件大小(4M)和超时限 ...

  9. SQL语句(一)SQL和数据库数据表的创建

    SQL的组成 (1) 数据定义语言DDL(Data Definition Language) 用于数据库和数据表的创建.修改和删除等操作 CREATE (create) 创建数据库.数据表 ALTER ...

随机推荐

  1. 初识Docker和安装

    什么是Docker Docker的构想是要实现“Build,Ship and Run Any App,Anywhere”,即通过对应用的封装(Packaging).分发(Distribution).部 ...

  2. 面试题20:搜索二叉树可能有两个元素发生了交换,如何恢复BST?

    Two elements of a binary search tree (BST) are swapped by mistake. Recover the tree without changing ...

  3. springMVC对于Controller返回值的可选类型

    2018-01-11 对于springMVC处理方法支持支持一系列的返回方式:  (1)ModelAndView (2)Model (3)ModelMap (4)Map (5)View (6)Stri ...

  4. 详解ruby的attr_accessor和cattr_accessor

    原文地址:http://lee2013.iteye.com/blog/1098914 1. attr_accessor的用法相当简单, 就相当于getter和setter,看一个类就知道怎样用了: c ...

  5. springboot启动太慢优化

    需求缘起:有人在[springboot]微信公众号问:springboot启动慢的问题何时有个分享就好了,谢谢.粉丝的问题还是要认真的回答的. 我们先看看本节的大纲: (1)组件自动扫描带来的问题(@ ...

  6. sql中同一个表一个字段的值赋值给另一个字段

    UPDATE SG_User   SET DefaultOrganizationID = OrganizationID

  7. java编写带头结点的单链表

    最近在牛客网上练习在线编程,希望自己坚持下去,每天都坚持下去练习,给自己一个沉淀,不多说了 我遇到了一个用java实现单链表的题目,就自己在做题中将单链表完善了一下,希望大家作为参考也熟悉一下,自己 ...

  8. SpringBean 工作原理详解

    本文来自Github开源项目https://github.com/Snailclimb/JavaGuide,只供自己学习总结无商业用途,如有侵权,联系删除 前言 在 Spring 中,那些组成应用程序 ...

  9. slf4j和log4j源代码解析以及详解

    备注:下面所有代码以log4j为例 包结构 slf4j-api.jar对外提供api slf4j.log4j12.jar提供适配器 log4j.jar是log4j的jar slf4j初始化 获取ILo ...

  10. jQuery基础(工具函数,浏览器信息,检测节点,字符串,$.extend())

    1.获取浏览器的名称与版本信息   在jQuery中,通过$.browser对象可以获取浏览器的名称和版本信息 如$.browser.chrome为true,表示当前为Chrome浏览器, $.bro ...