当前位置:Gxlcms > 数据库问题 > SQL Server 的常见约束

SQL Server 的常见约束

时间:2021-07-01 10:21:17 帮助过:17人阅读

CREATE TABLE stuDB 2 ( 3 SID CHAR(12) PRIMARY KEY 4 ) 5

 

  • 建表后通过添加语句添加
    添加语句为:
        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(StuNO)       

       

    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 的常见约束

    标签:eric   lte   var   class   自动   ima   div   ref   约束   

    人气教程排行