网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 交易代码 > SQL语法 > 正文

SQLServer约束方式代码

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务

【网学网提醒】:网学会员为大家收集整理了SQLServer约束方式代码提供大家参考,希望对大家有所帮助!


    在表中添加约束,基本常用的有两种类型,一个是创建表时同时添加约束,另一个是创建好表通过修改表添加约束,在这里是创建表时同时添加约束,但是有两种不同的用写法。在这里列举出一些创建约束的形式,共参考(均在SQLServer2005中编译通过):createdatabasestuDBgousestuDBgo-----1.1先创建表在创建表,然后通过修改表在创建约束(理论课中的示例)----先创建表CREATE(stuNamestuNostuAge节stuIDNUMERIC(18,0),--身份证号,NUMERIC(18,0)代表位数字,VARCHAR(20)CHAR(6)INTNOTNOTNOTNULL,--学员,非空(必填)TABLEstuInfo/*-创建学员信息表-*/
    NULL,
    --,非空(必填)
    NULL,
    --年龄,INT类型不用指定大小,默认为个字
    小数位数为stuSeatSMALLINTIDENTITY(1,1),--座位号,自动编号(标识
    列),从开始递增stuAddressTEXT--住址,允许为空,即可选输入
    )GOCREATETABLEstuMarks(ExamNostuNoCHAR(7)CHAR(6)NOTNULL,NOTNULL,NOTNULL,--考号----笔试成绩
    writtenExam
    INT
     LabExam)GO
    INT
    NOTNULL
    --机试成绩
    --然后健约束----添加主键约束(stuNo作为主键)ALTERTABLEstuInfoADDCONSTRAINTPK_stuNoPRIMARYKEY(stuNo)---添加唯一约束(身份证号唯一,因为每人的身份证号全国唯一)ALTERTABLEstuInfoADDCONSTRAINTUQ_stuIDUNIQUE(stuID)---添加默认约束(如果地址不填,默认为“地址不详”)ALTERTABLEstuInfoADDCONSTRAINTDF_stuAddressDEFAULT('地址不详')FORstuAddress---添加检查check约束,要求年龄只能在-岁之间ALTERTABLEstuInfoADDCONSTRAINTCK_stuAgeCHECK(stuAgeBETWEEN15AND40)--添加外键约束(主表stuInfo和从表stuMarks建立关系,关联字段为stuNo)ALTERTABLEstuMarksADDCONSTRAINTFK_stuNoFOREIGNKEY(stuNo)REFERENCESstuInfo(stuNo)GO
    -----1.2先创建表在创建表,然后通过修改表在创建约束(项目实战中的的示例)droptablestuMarksdroptablestuInfogo--先创建表CREATETABLEstuInfo/*-创建学员信息表-*/
     (stuNamestuNostuAge节stuIDNUMERIC(18,0),--身份证号,NUMERIC(18,0)代表位数字,VARCHAR(20)CHAR(6)INTNOTNOTNOTNULL,--学员,非空(必填)
    NULL,
    --,非空(必填)
    NULL,
    --年龄,INT类型不用指定大小,默认为个字
    小数位数为stuSeatSMALLINTIDENTITY(1,1),--座位号,自动编号(标识
    列),从开始递增stuAddressTEXT--住址,允许为空,即可选输入
    )GOCREATETABLEstuMarks(ExamNostuNoCHAR(7)CHAR(6)NOTNULL,NOTNULL,NOTNULL,--考号----笔试成绩
    writtenExamLabExam)GOINT
    INT
    NOTNULL
    --机试成绩
    --然后健约束,注意:与前面的示例的区别是用“,”号隔开ALTERTABLEstuInfoADDCONSTRAINTPK_stuNoPRIMARYKEY(stuNo)---添加唯一约束(身份证号唯一,因
    为每人的身份证号全国唯一),CONSTRAINTUQ_stuIDUNIQUE(stuID)---添加默认约束(如果地址不填,默认为“地址不详”),CONSTRAINTDF_stuAddressDEFAULT('地址不详')FORstuAddress---添加检查check约束,要求年龄只能在-岁之间,CONSTRAINTCK_stuAgeCHECK(stuAgeBETWEEN15AND40)
     --添加外键约束(主表stuInfo和从表stuMarks建立关系,关联字段为stuNo),CONSTRAINTFK_stuNoFOREIGNKEY(stuNo)REFERENCESstuInfo(stuNo)GO-----2.1创建表时同时添加约束---------droptablestuMarksdroptablestuInfogoCREATE(stuNamestuNoVARCHAR(20)NOTNULL,--学员,非空(必填)TABLEstuInfo/*-创建学员信息表-*/
    CHAR(6)primarykey,
    --,主键--
    stuAgeINTNOT年龄,检查约束stuID
    NULLcheck(stuAgebetween15and40),
    NUMERIC(18,0)unique,
    --身份证号,NUMERIC(18,0)代
    表位数字,小数位数为,该列唯一约束stuSeatSMALLINTIDENTITY(1,1),--座位号,自动编号(标识
    列),从开始递增stuAddressTEXTdefault'地址不详'--住址,允许为空,即可选输
    入,默认”地址不详“)GOCREATETABLEstuMarks(ExamNostuNoCHAR(7)CHAR(6)primarykey,--考号,主键
    NOTNULLforeignkeyreferences--,外键NOTNULL,--笔试成绩
    stuInfo(stuNo),writtenExamINT
     LabExam)GO
    INT
    NOTNULL
    --机试成绩
    -----2.2创建表时同时添加约束,另一个版本------------droptablestuMarksdroptablestuInfogoCREATE(stuNamestuNoVARCHAR(20)CHAR(6),--,主键NOTNULL,--学员,非空(必填)TABLEstuInfo/*-创建学员信息表-*/
    CONSTRAINTpk_stuNoprimarykey(stuNo),stuAgeINTNOTNULL,--年龄,
    constraintck_stuAgecheck(stuAgebetween15and40),--检查约束stuIDNUMERIC(18,0),--身份证号,NUMERIC(18,0)
    代表位数字,小数位数为,该列唯一约束constraintuq_stuIdunique(stuID),stuSeatSMALLINTIDENTITY(1,1),--座位号,自动编号(标识
    列),从开始递增stuAddressTEXT,--住址,允许为空,即可选输
    入)GOCREATETABLEstuMarks(ExamNostuNoCHAR(7)CHAR(6)primarykey,NOTNULL,--考号,主键
    --,外键
    constraintfk_stuNoforeignkey(stuNo)referencesstuInfo(stuNo),
     writtenExamLabExam)GO--再来INT
    INT
    NOTNULL,
    --笔试成绩
    NOTNULL
    --机试成绩
    droptablestuMarksdroptablestuInfogoCREATE(stuNamestuNoVARCHAR(20)CHAR(6),--,主键--年龄,NOTNULL,--学员,非空(必填)TABLEstuInfo/*-创建学员信息表-*/
    primarykey(stuNo),stuAgeINTNOT
    NULL,
    check(stuAgebetween15and40),--检查约束stuIDNUMERIC(18,0),--身份证号,NUMERIC(18,0)
    代表位数字,小数位数为,该列唯一约束unique(stuID),stuSeatSMALLINTIDENTITY(1,1),--座位号,自动编号(标识
    列),从开始递增stuAddressTEXT,--住址,允许为空,即可选输
    入)GOCREATETABLEst
    uMarks(ExamNostuNoCHAR(7)CHAR(6)primarykey,NOTNULL,--考号,主键
    --,外键
    foreignkey(stuNo)referencesstuInfo(stuNo),writtenExamINTNOTNULL,--笔试成绩
     LabExam)GO
    INT
    NOTNULL
    --机试成绩
    --添加复合主键droptablestuMarksdroptablestuInfogo
    CREATE(stuName
    TABLE
    stuInfo
    /*-创建学员信息表-*/
    VARCHAR(20)CHAR(6)NOT
    NOTNOT
    NULL,NULL,
    --学员,非空(必填)--班级名称,非空(必填)
    classNamestuAge节)GOINT
    NULL,
    --年龄,INT类型不用指定大小,默认为个字
    --然后健约束,注意:这里是复合主键ALTERTABLEstuInfoADDCONSTRAINTPK_stuNoPRIMARYKEY(className,stuName)--ORdroptablestuInfogo--先创建表CREATE(stuNameVARCHAR(20)CHAR(6)NOTNOTNULL,NULL,--学员,非空(必填)--班级名称,非空(必填)--复TABLEstuInfo/*-创建学员信息表-*/
    className
    CONSTRAINTPK_stuNoPRIMARYKEY(className,stuName),
     合主键stuAge节)GO--再来一种createtableA(a1int,b1intnotnull)select*fromAaltertableAaltercolumna1floatnullaltertableAaltercolumna1floatnotnullaltertableAaddprimarykey(a1)altertableAaddcheck(b1between1and100)INTNOTNULL,--年龄,INT类型不用指定大小,默认为个字
    
    
设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师