MSSQL DBcheck
--1、创建数据库。
--create database MyDatabase;
--删除数据库
--drop database MyDatabase; ---------------------------------------------------------
--MSSQL Check 约束
--1、创建数据库。
--create database MyDatabase;
--删除数据库
--drop database MyDatabase; --2、重新创建一个数据库,使用带参数的方式来创建
--filename 需要修改为本机MSSQL 存储的路径
--本例中使用 E:\ProgramMSSQLServerDB
create database ABC
on primary
(
--为主数据文件起一个逻辑名称
name='ABC',
filename='E:\ProgramMSSQLServerDB\ABC.mdf',
size=10MB,
maxsize=100MB,
filegrowth=50MB--10%
)
log on
(
name='ABC_log',
filename='E:\ProgramMSSQLServerDB\ABC_log.ldf',
size=3mb,
maxsize=100mb,
filegrowth=10%
) go
use abc
go -------------- 通过代码来为表增加约束--------------------------
create table Employees
(
EmpId int identity(1,1),
EmpName varchar(50),
EmpGender nchar(1),
EmpAge int,
EmpEmail varchar(100),
EmpAddress varchar(500)
) create table Department
(
DepId int identity(1,1) primary key,
DepName varchar(50) unique not null
) --表示插入一个空值,当在ssms设计器中插入空值的时候,可以使用大写NULL来表示空值(仅限于在ssms设计器中这样使用)
--insert into biao values(null) --当表中某列是日期类型的时候,这时要向该列中插入一个日期的时候,需要用单引号把日期字符串引起来,例如:
--insert into biao(birthday) values('1996-10-10') --为Department表增加一个主键
--alter table Department add constraint PK_Department_DepId primary key(DepId) ---------------------------------------------------------
--============手动增加约束==========
--手动删除一列(删除EmpAddress列)
alter table Employees drop column EmpAddress --手动增加一列(增加一列EmpAddr varchar(1000))
alter table Employees add EmpAddr varchar(1000) --手动修改一下EmpEmail的数据类型(varchar(200))
alter table Employees alter column EmpEmail varchar(200) --【约束-保证数据完整性】 --【主键约束】(PK) primary key constraint 唯一且不为空
--为EmpId增加一个主键约束
--[alter table 表名 add constraint 约束名 约束类型(列名)]
alter table Employees add constraint PK_Employees_EmpId primary key(EmpId) --【非空约束】,为EmpName增加一个非空约束
--1.既可以修改字段类型,2.也可以增加非空约束
alter table Employees alter column EmpName varchar(5) not null --【唯一约束】(UQ) unique constraint 唯一,允许为空,但只能出现一次
--为EmpName增加一个唯一约束
alter table Employees add constraint UQ_Employeess_EmpName unique(EmpName) --【默认约束】(DF) default constraint 默认值
--为性别增加一个默认约束,默认为'男'
alter table Employees add constraint DF_Employees_EmpGender default('男') for EmpGender --【检查约束】(CK) check constraint 范围以及格式限制
--为年龄增加一个检查约束:年龄必须在0-120岁之间,含岁与岁。
alter table Employees add constraint CK_Employees_EmpAge check(EmpAge>=0 and EmpAge<=120) --创建一个部门表,然后为Employee表增加一个DepId列。
alter table Employees add EmpDepId int not null --【外键约束】(FK) foreign key constraint 表关系(在外键表中建立外键约束)
-- 增加外键约束时,设置【级联更新、级联删除】:来保证,当主键表中的记录发生改变时候,对应的外键表中的数据也发生相应的改变。 --[ ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ]
--[ ON UPDATE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ] --为Employee表增加外键约束
alter table Employees
add constraint FK_Employees_Department foreign key(EmpDepId) references Department(DepId) -----------手动删除约束-------------------------
alter table Employees drop constraint FK_Employees_Department --通过一条语句删除多个约束
alter table Employees
drop constraint UQ_Employeess_EmpName,DF_Employees_EmpGender,CK_Employees_EmpAge --通过一条语句创建多个约束
alter table Employees add
constraint UQ_Employeess_EmpName unique(EmpName),
constraint DF_Employees_EmpGender default('男') for EmpGender,
constraint CK_Employees_EmpAge check(EmpAge>=0 and EmpAge<=120) -------------------------------------------------------------------
---------在创建表的时候增加约束 create table TestConstraint
(
autoId int identity(1,1) primary key,
uname varchar(50) unique,
uage int check(uage>10 and uage<20),
ugender char(2) default('男')
)
-------------------------------------------------------------------
--为员工表增加一个外键约束,同时设置级联更新与级联删除
alter table Employees add constraint FK_Employees_Department
foreign key(EmpDepId) references Department(DepId)
on delete cascade
on update cascade
MSSQL DBcheck的更多相关文章
- [干货来袭]MSSQL Server on Linux预览版安装教程(先帮大家踩坑)
前言 昨天晚上微软爸爸开了全国开发者大会,会上的内容,我就不多说了,园子里面很多.. 我们唐总裁在今年曾今透漏过SQL Server love Linux,果不其然,这次开发者大会上就推出了MSSQL ...
- 分享MSSQL、MySql、Oracle的大数据批量导入方法及编程手法细节
1:MSSQL SQL语法篇: BULK INSERT [ database_name . [ schema_name ] . | schema_name . ] [ table_name | vie ...
- MSSQL远程连接
背景:部署公司自己研发的ERP系统. 1)系统架构: .NET+MSSQL. 2)服务器系统:Windows Server 2008 R2 Enterprise 3)数据库:MSSQL Server ...
- 学习笔记 MSSQL显错手工注入
和朋友一起学习,速度就是快.感谢珍惜少年时. 网上很多都在长篇大论MSSQL显错手工注入,其实原理只有一小段.如下: ' and (查询一段内容)=1 and 'C'='Cnvarchar类型(查询一 ...
- MSSQL部分补丁的列表及下载地址(持续更新)
整理了MSSQL部分补丁的列表及下载地址(截至2016-11-18),供参考下. Edition Version Date Published Download Link SQL Server 201 ...
- .NET+IIS+MSSQL配置
好久没配置.NET+IIS+MSSQL了,跟以前不大一样了.总结下吧. 环境: Windows Server 2012 标准版 x64 SQL Server Express 2014 一.HTTP E ...
- C++-数据库【1】-C++连接MSSQL数据库
测试环境—— 系统:Win7 64bit 编译器:VC++ 2015 数据库:MSSQL 2008 R2 #include <Windows.h> #include <stdio.h ...
- mssql与mysql 数据迁移
概要: mssql向mysql迁移的实例,所要用到的工具bcp和load data local infile. 由于订单记录的数据是存放在mssql服务器上的,而项目需求把数据迁移到mysql ser ...
- 一起来测试天兔Lepus3.8 Beta版本的MSSQL部分
一起来测试天兔Lepus3.8 Beta版本的MSSQL部分 产品介绍:http://www.lepus.cc/下载地址:http://www.lepus.cc/soft/18手册地址:http:// ...
随机推荐
- ssl证书验证的问题
对于https请求,是需要ssl证书验证的请求的,所以如果在请求时如果不带ssl证书,那么可以忽略证书的验证 有三种方法去实现: 1.Requests请求: 在文档中可以看到:http://docs. ...
- STL--heap概述:make_heap,sort_heap,pop_heap,push_heap
heap并不属于STL容器组件,它分为 max heap 和min heap,在缺省情况下,max-heap是优先队列(priority queue)的底层实现机制. 而这个实现机制中的max-hea ...
- Jenkins系列-Jenkins通过Publish over SSH插件实现远程部署
配置ssh免秘钥登录 安装Publish over SSH插件 插件使用官网:https://wiki.jenkins.io/display/JENKINS/Publish+Over+SSH+Plug ...
- delphi鼠标状态
Screen.Cursor := crNo;
- MyBatis配置和日志
MyBatis最关键的组成部分是SqlSessionFactory,我们可以从中获取SqlSession,并执行映射的SQL语句.SqlSessionFactory对象可以通过基于XML的配置信息或者 ...
- BZOJ 1227 虔诚的墓主人(离散化+树状数组)
题目中矩形的尺寸太大,导致墓地的数目太多,如果我们统计每一个墓地的虔诚度,超时是一定的. 而常青树的数目<=1e5.这启发我们从树的方向去思考. 考虑一行没有树的情况,显然这一行的墓地的虔诚度之 ...
- hdu 1068 Girls and Boys (二分匹配)
Girls and Boys Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) ...
- SocketServer-实现并发处理
Python提供了两个基本的socket模块. 一个是socket,它提供了标准的BSD Socket API:另一个是socketServer,它提供了服务器中心类,可以简化网络服务器的开发,其实就 ...
- C++中Set的使用
/* #include <string> // 使用 string 类时须包含这个文件 #include <iostream> // 这个就加上去吧.c++的输入和输出. us ...
- POJ2942:Knights of the Round Table——题解
http://poj.org/problem?id=2942 所写的tarjan练习题最难的一道. 说白了难在考得不是纯tarjan. 首先我们把仇恨关系处理成非仇恨关系的图,然后找双连通分量,在双连 ...