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:// ...
随机推荐
- error LNK2019: 无法解析的外部符号 该符号在函数 中被引用 解决方案
需要添加lib或者dll库.项目-属性-配置属性-链接器-输入-附件依赖项,添加需要的lib. 例如我在运行OSG程序的时候,忘记添加了附件依赖项就会报这个错. 解决方案如图.
- intellij idea 之 CheckStyle 代码格式校验
- phpmyadmin中缺少mysqli扩展 的结解办法
修改 ;extension=php_mysqli.dll 去掉前面的 ; 以及 调整 php文件夹的目录位置. 这个办法是不是好使,我不确定.这个方法只适合 用win系统 这个,貌似 ...
- 第28天:js-Tab栏切换封装函数
一.input.value所有值都是string 二.变量和属性var index=10;//变量var arr=[];//数组arr.index=20;//index为自定义属性,只能在arr下使用 ...
- html5 isPointInPath相关操作
<body> <canvas id="> </canvas> <script type="text/javascript"> ...
- 获取当前路径下的所有文件路径 :listFiles
获取当前路径下的所有文件路口 :listFiles
- FZU 1492 地震预测(链表)
实际上把数组排序一遍加入链表中,再记录好数组原来的数在链表中的位置.我们只需要维护链表的删除操作就可以了. # include <cstdio> # include <cstring ...
- 【bzoj3174】[Tjoi2013]拯救小矮人 贪心+dp
题目描述 一群小矮人掉进了一个很深的陷阱里,由于太矮爬不上来,于是他们决定搭一个人梯.即:一个小矮人站在另一小矮人的 肩膀上,知道最顶端的小矮人伸直胳膊可以碰到陷阱口.对于每一个小矮人,我们知道他从脚 ...
- Square Root of Permutation - CF612E
Description A permutation of length n is an array containing each integer from 1 to n exactly once. ...
- URL 编码规则
规则: 1.将空格转换为加号(+) 2.对0-9.a-z.A-Z之间的字符保持不变 3.对于所有其他的字符,用这个字符的当前当前字符集编码在内存中的十六进制格式表示,并在每一个字节前加上一个百分号(% ...