1.主键约束------我是最常见的哦(PRIMARY KEY)

  •  限制:不能为空,数据唯一,一个表中只有一个 
  • 方法:
    • 建表时直接在列类型后面添加   如:

       CREATE TABLE stuDB
      (
      SID CHAR(12) PRIMARY KEY
      )
    • 建表后通过添加语句添加
      添加语句为:
      ALTER TABLE <表名>
      ADD CONSTRAINT 自定义的约束名 约束类型 具体的约束说明 例:
      ALTER TABLE stuDB
      ADD CONSTRAINT PK_SID PRIMARY KEY

2.外键约束------表与表之间的根深蒂固的链接者(FOREIGN KEY)

  • 效果:用于两表间建立关系,需要指定引用主表的那列
  • 方法:

    1.建表时直接加在类型后面
    
        CREATE TABLE stuDB
    (
    SID CHAR(12) ,
    Sname VARCHAR(12) FOREIGN KEY REFERENCES 从表名(列名)
    ) 2.建表后在后面添加 添加语句为:
    ALTER TABLE 主表名
    ADD CONSTRAINT 自定义约束名 FOREIGN KEY(列名)REFERENCES 从表名(列名) 例:
    ALTER TABLE stuDB
    ADD CONSTRAINT DF_Sname FOREIGN KEY(Sname) REFERENCES sCore(Sname)

3.唯一约束-----这列中只有一个本宝宝(Unique Key)

  •   效果:列值唯一,就算为空值,也要任性的唯一
  • 方法:
    1.建表时直接加在类型后面
    
        CREATE TABLE stuDB
    (
    SID CHAR(12) ,
    Sname VARCHAR(12) ,
    StuNO VARCHAR(12) UNIQUE
    ) 2.建表后在后面添加 添加语句为:
    ALTER TABLE 主表名
    ADD CONSTRAINT 自定义约束名 UNIQUE(列名) 例:
    ALTER TABLE stuDB
    ADD CONSTRAINT DF_StuNO UNIQUE(Stu'NO)

4.默认约束------我就默默的帮你选了哦( DEFAULT)

  • 效果:只是嘿嘿的帮你选了
  • 用法:
    1.建表时直接加在类型后面
    
        CREATE TABLE stuDB
    (
    SID CHAR(12) ,
    Sname VARCHAR(12) ,
    StuNO VARCHAR(12),
    Ssex CHAR(2) DEFAULT '男'
    ) 2.建表后在后面添加 添加语句为:
    ALTER TABLE 主表名
    ADD CONSTRAINT 自定义约束名 DEFAULT (默认的东东) FOR 列名 例:
    ALTER TABLE stuDB
    ADD CONSTRAINT DF_Ssex DEFAULT ('男') FOR Ssex

5.检查约束------你   你  就是你  站住 让我检查通过再走(CHECK)

  • 效果: 站住检查,通过后才可录入表中
  • 用法:
    1.建表时直接加在类型后面
    
        CREATE TABLE stuDB
    (
    SID CHAR(12) ,
    Sname VARCHAR(12) ,
    StuNO VARCHAR(12),
    Ssex CHAR(2) ,
    Sage INT CHECK (Age >= 18 AND Age<=55)
    ) 2.建表后在后面添加 添加语句为:
    ALTER TABLE 主表名
    ADD CONSTRAINT 自定义约束名 CHECK(条件) 例:
    ALTER TABLE stuDB
    ADD CONSTRAINT DF_ Sage CHECK (Age >= 18 AND Age<=55)

6.其他约束

  • 自动增长的约束  

    •   限制:必须在类型是 INT,SMALLINTt等时才可使用

      语法:
      列名 类型 IDENTITY(开始数字,每次加上的数字) 例如:
      stuSeat SMALLINT IDENTITY (1,1)
  •  限制位数
    语法:
    
      列名 NUMERIC(数字位数,小数点位数)
    
    例如:
    
        stuID  NUMERIC(18,0),
        

     

SQL Server 的常见约束的更多相关文章

  1. SQL Server缺省约束、列约束和表约束

    SQL Server缺省约束是SQL Server数据库中的一种约束,下面就为您介绍SQL Server缺省约束.列约束和表约束的定义方法啊,供您参考. SQL Server缺省约束 SQL Serv ...

  2. SQL Server 2008 常见异常收集(持续更新)

    写在前面: 最近,在使用SQL Server 2008时,出现了不少问题.发现,很多问题都是以前碰见过的,并且当时也寻找到了解决方法(绝大部分来源于“百度”与“Google”),只是时间一长,又忘记了 ...

  3. SQL Server 创建唯一约束sql语句

    SQL Server 创建唯一约束sql语句   语句示例:   在创建表是时同时创建, 创建id,name,sex三个字段的唯一索引 create table t1( id int primary ...

  4. 详解如何定义SQL Server外关键字约束

    SQL Server外关键字约束定义了表之间的关系.当一个表中的一个列或多个列的组合和其它表中的主关键字定义相同时,就可以将这些列或列的组合定义为外关键字,并设定它适合哪个表中哪些列相关联.这样,当在 ...

  5. SQL Server 2005中约束

    在SQL Server 2005中有6种约束:主键约束(primary key constraint).惟一性约束(unique constraint).检查约束(check constraint). ...

  6. Sql Server数据库之约束

    一.约束的分类 实体约束:关于行的约束,比如某一行出现的值就不允许别的行出现,如主键 域约束:关于列的约束,对表中所有行的某些列进行约束,如check约束 参照完整性约束:如果某列的值必须与其他列的值 ...

  7. SQL Server中有关约束(constraint)的一些细节

    本文出处:http://www.cnblogs.com/wy123/p/7350265.html (保留出处并非什么原创作品权利,本人拙作还远远达不到,仅仅是为了链接到原文,因为后续对可能存在的一些错 ...

  8. SQL Server 外键约束的例子

    外键约束的测试表与测试数据 -- 创建测试主表. ID 是主键. CREATE TABLE test_main ( id INT, value ), PRIMARY KEY(id) ); -- 创建测 ...

  9. SQL SERVER 主键约束

    主键约束: 遵循关系型模型中的第二范式.唯一的识别一条记录,不能为空. CREATE TABLE Persons ( Id_P int NOT NULL PRIMARY KEY, LastName v ...

随机推荐

  1. Installation of the JDK-9 on ubuntu(linux上安装jdk-9)

    Description:Java SE 9 is the latest update to the Java Platform(General Availability on 21 September ...

  2. Hadoop(八)Java程序访问HDFS集群中数据块与查看文件系统

    前言 我们知道HDFS集群中,所有的文件都是存放在DN的数据块中的.那我们该怎么去查看数据块的相关属性的呢?这就是我今天分享的内容了 一.HDFS中数据块概述 1.1.HDFS集群中数据块存放位置 我 ...

  3. visual studio 2015 warning MSB3246

    在我们很高兴的按下 本地计算机运行 按钮,希望看到我们程序运行的时候,垃圾vs就告诉我们,你的程序出现了问题,问题就是: warning MSB3246: 解析的文件包含错误图像.无元数据或不可访问. ...

  4. hover与click样式冲突

    如果你的hover事件和click事件的样式不同,如元素背景本来是#fff,如果hover时背景是#ddd,点击时背景是#aaa,那么问题是当你点击后,鼠标再移动到这个元素时背景会变成#ddd,而你希 ...

  5. SQL数据库的基础操作

    一,认识SQL数据库 美国Microsoft公司推出的一种关系型数据库系统.SQLServer是一个可扩展的.高性能的.为分布式客户机/服务器计算所设计的数据库管理系统,实现了与WindowsNT的有 ...

  6. jdk8 JAVA_OPTS

    JAVA_OPTS="-server -Xms1024m -Xmx1024m -XX:MetaspaceSize=512m -XX:MaxMetaspaceSize=512m -Djava. ...

  7. CURL常用命令记录--用于简单测试接口

    curl命令是一个利用URL规则在命令行下工作的文件传输工具.它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具.作为一款强力工具,curl支持包括HTTP.HTTPS.f ...

  8. 【ASP.NET MVC 学习笔记】- 05 依赖注入工具Ninject

    本文参考:http://www.cnblogs.com/willick/p/3223042.html 1.Ninject是一款轻量级的DI工具,可通过VS的插件NuGet将其引用到项目中. 2.使用N ...

  9. LeetCode 259. 3Sum Smaller (三数之和较小值) $

    Given an array of n integers nums and a target, find the number of index triplets i, j, k with 0 < ...

  10. 火狐浏览器打开html文件,中文乱码

    当html文件为: 解决方法: 将   <meta http-equiv="Content-Type" content="text/html; charset=UT ...