--创建数据库
create database students
on primary
(
    name=stu_data,
    filename='f:\SQL\stu_data.mdf',
    size=1,
    maxsize=10,
    filegrowth=1
)
log on
(
    name=stu_log,
    filename='f:\SQL\stu_log.ldf',
    size=1,
    maxsize=10,
    filegrowth=1
)
--删除数据库
drop database students
--使用数据库
use students
--删除表
drop table score
drop table student
drop table class
--自定义类型
Exec sp_addtype age,int ,'not null'
--定义表时第一种方法创建主键外健

create table student
(
    fCode char(10) identity(1,2) constraint PK_fCode1 primary key,
    fName varchar(15) not null constraint DF_fName default 'sss',
    fClass varchar(5) not null default '',
    fSex varchar(2)  not null default ''constraint CK_fSex check (fSex in('男 ','女')),
    fAge age
)
create table score
(
    fId char(10) constraint FK_fId foreign key (fId)references student,
    fSubject varchar(10) not null default '',
    fScore int not null default 0 constraint CK_fScore check(fScore>=0 and fScore<=100)
)
--定义表时第二种方法创建主键外键
create table class
(
    fClassId int not null,
    fTeacherName varchar(10) not null,
    fYear varchar(4)not null unique,
    constraint PK_fClassId primary key (fClassId),
    constraint FK_fClassId foreign key (fClassId) references student
    
)
--实例表
drop table A
create table A
(
    fCode int not null,
    fClassId varchar(5)not null,
    fName varchar(4)not null,
    fSex varchar(2)not null,
    
)
--添加唯一性约束
alter table A
add constraint UQ_fClassId_A unique(fClassId)
--添加主键,默认值,检查,外键约束
alter table A
add constraint  PK_fCode_A primary key(fCode)

alter table A
add constraint DF_fName_A default '' for fName

alter table A
add constraint CK_fSex_A check(fsex in('男','女'))

alter table A
add constraint FK_fCode_A foreign key(fCode) references student
--删除约束
alter table A
drop constraint DF_fName_A
--增加列
alter table A
add fAge int null
--删除列
alter table A
drop column fAge

/*注意
    1、主键表中主键列的类型和长度必须和外键表中列的类型和长度相同
    2、外键表中列的取值只能是主键表中主键列的子集*/
    
    
/*
--新增所有列数据
insert into student values('李鸿','0201','女',23)
insert into student values('John','0201','男',23)
insert into score values(1,'英语',90)
insert into class values(1,'逐月','2002')
insert into score values(2,'英语',102)
--新增数据部分列
insert into student(fName,fSex) values('桐港','男')

select * from student
select * from score
select * from class*/

SQLServer创建约束的更多相关文章

  1. 【转】SQL Server 创建约束图解 唯一 主键-界面操作

    SQL Server 创建约束图解 唯一 主键-界面操作 SQLServer中有五种约束,Primary Key约束.Foreign Key约束.Unique约束.Default约束和Check约束, ...

  2. ABP框架使用Mysql数据库,以及基于SQLServer创建Mysql数据库的架构和数据

    ABP默认的数据库是SQLServer,不过ABP框架底层是EF框架,因此也是很容易支持其他类型的数据库的,本篇随笔介绍在ABP框架使用Mysql数据库,以及基于SQLServer创建MySql数据库 ...

  3. SqlServer--代码创建约束

    约束-保证数据完整性先用设计器创建约束,再用代码创建约束.数据库约束是为了保证数据的完整性(正确性)而实现的一套机制非空约束 (选择复选框)not null主键约束(PK)primary key co ...

  4. SqlServer创建数据表描述及列描述信息

    SqlServer创建数据表描述及列描述信息 Intro Q: 为什么要创建描述信息? A: 鼠标悬停在对应表和列上时,会出现描述信息,可以提高工作的效率,借助工具我们根据数据表可以生成Model,可 ...

  5. 约束Constraints--主键约束、外键约束、唯一约束、检查约束、默认约束、NOT NULL约束、列约束与表约束、创建约束、删除约束

    约束   Including Constraints 以下内容转自:https://www.cnblogs.com/wcl2017/p/7043939.html和http://blog.csdn.ne ...

  6. Oracle的创建表和创建约束的Sql语句

    Oracle的创建表和创建约束的Sql语法 1.创建表的语句 ---1.创建模拟的数据表 --- --1.1.创建学生表Student create table Student( StuId NUMB ...

  7. SQLServer创建链接服务器

    --SQLServer创建链接服务器----1.访问接口中Oracle接口 属性 选择 允许进程内-- --删除链接服务器EXEC master.dbo.sp_dropserver @server=N ...

  8. Oracle、Mysql、SqlServer创建表和给表和字段加注释

    一.Oracle --创建表 create table test (      id varchar2(200) primary key not null,      sort number,     ...

  9. PowerDesigner创建表 拷贝创建表语句 SQLSERVER创建数据库 使用查询 创建表 并且添加数据

    PowerDesigner创建表 : 1.双击打开PowerDesigner   2.双击打开Create model 3左键点击Model  types,再点击Physical    Data  m ...

随机推荐

  1. 重磅 | 阿里开源首个 Serverless 开发者平台 Serverless Devs

    Serverless 从概念提出到应用,已经走过了 8 个年头,开发者对 Serverless 的使用热情不断高涨.为帮助开发者实现一键体验多云产品,极速部署 Serverless 项目,10 月 2 ...

  2. C++类结构体与json相互转换

    1. 背景与需求 之前写C#的时候,解析json字符串一般使用的是开源的类库Newtonsoft.Json,方法十分简洁,比如: class Project { public string Input ...

  3. 前段---css

    css主要是用来做如何显示html元素的 当浏览器读到一个样式表,它就会按照这个样式表来对文档做渲染 注意:每一个css样式表都是由两个部分组成的, 1,选择器 2,声明 声明又包括属性值和属性,每个 ...

  4. Java初步学习——2021.10.05每日总结,第五周周二

    (1)今天做了什么: (2)明天准备做什么? (3)遇到的问题,如何解决? 今天学习了二维数组,包括二维数组的声明,和二维数组的创建.以及获取二维数组的长度,其中要注意的是二维数组是每个元素都是一维数 ...

  5. 洛谷4051 JSOI2007 字符加密(SA)

    真是一道良好的SA模板题 首先,由于涉及到从左边移动到右边这个过程,我们不妨直接把字符串复制一遍,接在后面. 然后直接构造后缀数组,按排名从小到大,枚举所有的位置,如果这个后缀的起始点是在原串中的,那 ...

  6. FastAPI 学习之路(二十七)安全校验

    你写API接口肯定你是希望是有权限的人才能访问,没有权限的人是不能访问的,那么我们应该如何去处理呢,我们可以用的验证方式有很多,我们这次分享的是用:OAuth2来认证.那么我们看下,需要怎么才能实现呢 ...

  7. GAN实战笔记——第二章自编码器生成模型入门

    自编码器生成模型入门 之所以讲解本章内容,原因有三. 生成模型对大多数人来说是一个全新的领域.大多数人一开始接触到的往往都是机器学习中的分类任务--也许因为它们更为直观:而生成模型试图生成看起来很逼真 ...

  8. 【UE4】GAMES101 图形学作业3:Blinn-Phong 模型与着色

    总览 在这次编程任务中,我们会进一步模拟现代图形技术.我们在代码中添加了Object Loader(用于加载三维模型), Vertex Shader 与Fragment Shader,并且支持了纹理映 ...

  9. Spring Security中配置AccessDeniedHandler没有生效

    现象 在 WebSecurityConfigurerAdapter 配置了如下代码: // 自定义未授权和未登录异常 http.exceptionHandling() .accessDeniedHan ...

  10. UltraSoft - Beta - Scrum Meeting 4

    Date: May 20th, 2020. Scrum 情况汇报 进度情况 组员 负责 今日进度 q2l PM.后端 完成了课程中心对课程提醒的爬虫 Liuzh 前端 修改DDL列表中起始时间为课程名 ...