MSSQL DBcheck

  1 --1、创建数据库。
  2 --create database MyDatabase;
  3 --删除数据库
  4 --drop database MyDatabase;
  5
  6 ---------------------------------------------------------
  7 --MSSQL Check 约束
  8 --1、创建数据库。
  9 --create database MyDatabase;
 10 --删除数据库
 11 --drop database MyDatabase;
 12
 13 --2、重新创建一个数据库,使用带参数的方式来创建
 14 --filename 需要修改为本机MSSQL 存储的路径
 15 --本例中使用 E:\ProgramMSSQLServerDB
 16 create database ABC
 17 on primary
 18 (
 19     --为主数据文件起一个逻辑名称
 20     name=‘ABC‘,
 21     filename=‘E:\ProgramMSSQLServerDB\ABC.mdf‘,
 22     size=10MB,
 23     maxsize=100MB,
 24     filegrowth=50MB--10%
 25 )
 26 log on
 27 (
 28     name=‘ABC_log‘,
 29     filename=‘E:\ProgramMSSQLServerDB\ABC_log.ldf‘,
 30     size=3mb,
 31     maxsize=100mb,
 32     filegrowth=10%
 33 )
 34
 35 go
 36 use abc
 37 go
 38
 39 -------------- 通过代码来为表增加约束--------------------------
 40 create table Employees
 41 (
 42     EmpId int identity(1,1),
 43     EmpName varchar(50),
 44     EmpGender nchar(1),
 45     EmpAge int,
 46     EmpEmail varchar(100),
 47     EmpAddress varchar(500)
 48 )
 49
 50 create table Department
 51 (
 52     DepId int identity(1,1) primary key,
 53     DepName varchar(50) unique not null
 54 )
 55
 56 --表示插入一个空值,当在ssms设计器中插入空值的时候,可以使用大写NULL来表示空值(仅限于在ssms设计器中这样使用)
 57 --insert into biao values(null)
 58
 59 --当表中某列是日期类型的时候,这时要向该列中插入一个日期的时候,需要用单引号把日期字符串引起来,例如:
 60 --insert into biao(birthday) values(‘1996-10-10‘)
 61
 62 --为Department表增加一个主键
 63 --alter table Department add constraint PK_Department_DepId primary key(DepId)
 64
 65
 66 ---------------------------------------------------------
 67 --============手动增加约束==========
 68 --手动删除一列(删除EmpAddress列)
 69 alter table Employees drop column EmpAddress
 70
 71 --手动增加一列(增加一列EmpAddr varchar(1000))
 72 alter table Employees add EmpAddr varchar(1000)
 73
 74 --手动修改一下EmpEmail的数据类型(varchar(200))
 75 alter table Employees alter column EmpEmail varchar(200)
 76
 77 --【约束-保证数据完整性】
 78
 79 --【主键约束】(PK) primary key constraint 唯一且不为空
 80 --为EmpId增加一个主键约束
 81 --[alter table 表名 add constraint 约束名 约束类型(列名)]
 82 alter table Employees add constraint PK_Employees_EmpId primary key(EmpId)
 83
 84 --【非空约束】,为EmpName增加一个非空约束
 85 --1.既可以修改字段类型,2.也可以增加非空约束
 86 alter table Employees alter column EmpName varchar(5) not null
 87
 88 --【唯一约束】(UQ) unique constraint 唯一,允许为空,但只能出现一次
 89 --为EmpName增加一个唯一约束
 90 alter table Employees add constraint UQ_Employeess_EmpName unique(EmpName)
 91
 92 --【默认约束】(DF) default constraint 默认值
 93 --为性别增加一个默认约束,默认为‘男‘
 94 alter table Employees add constraint DF_Employees_EmpGender default(‘男‘) for EmpGender
 95
 96 --【检查约束】(CK) check constraint 范围以及格式限制
 97 --为年龄增加一个检查约束:年龄必须在0-120岁之间,含岁与岁。
 98 alter table Employees add constraint CK_Employees_EmpAge check(EmpAge>=0 and EmpAge<=120)
 99
100 --创建一个部门表,然后为Employee表增加一个DepId列。
101 alter table Employees  add EmpDepId int not null
102
103 --【外键约束】(FK) foreign key constraint 表关系(在外键表中建立外键约束)
104 -- 增加外键约束时,设置【级联更新、级联删除】:来保证,当主键表中的记录发生改变时候,对应的外键表中的数据也发生相应的改变。
105
106 --[ ON DELETE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ]
107 --[ ON UPDATE { NO ACTION | CASCADE | SET NULL | SET DEFAULT } ]
108
109 --为Employee表增加外键约束
110 alter table Employees
111 add constraint FK_Employees_Department foreign key(EmpDepId) references Department(DepId)
112
113
114 -----------手动删除约束-------------------------
115 alter table Employees drop constraint FK_Employees_Department
116
117 --通过一条语句删除多个约束
118 alter table Employees
119 drop constraint UQ_Employeess_EmpName,DF_Employees_EmpGender,CK_Employees_EmpAge
120
121
122 --通过一条语句创建多个约束
123 alter table Employees add
124 constraint UQ_Employeess_EmpName unique(EmpName),
125 constraint DF_Employees_EmpGender default(‘男‘) for EmpGender,
126 constraint CK_Employees_EmpAge check(EmpAge>=0 and EmpAge<=120)
127
128 -------------------------------------------------------------------
129 ---------在创建表的时候增加约束
130
131 create table TestConstraint
132 (
133     autoId int identity(1,1) primary key,
134     uname varchar(50) unique,
135     uage int check(uage>10 and uage<20),
136     ugender char(2) default(‘男‘)
137 )
138 -------------------------------------------------------------------
139 --为员工表增加一个外键约束,同时设置级联更新与级联删除
140 alter table Employees add constraint FK_Employees_Department
141 foreign key(EmpDepId) references Department(DepId)
142 on delete cascade
143 on update cascade
时间: 2024-11-05 22:33:19

MSSQL DBcheck的相关文章

linux编译安装mssql客户端和配置php连接mssql

凡是连接数据库,必须安装客户端,我一般写博客都不写原理,但是后来发现回头看自己写的自己都看不懂,所以这章博客会多一点原理性的东西. 数据库的连接一般都是在客户端上完成的,MySQL也不例外,安装mysql时一般都会这么安装: #yum install mysql mysql-server 上面的mysql就是安装的客户端,mysql-server就是服务端,不安装客户端(mysql)就没办法执行mysql连接命令:mysql -u user -p pass -h -P port 而sqlserv

Mssql企业实战之数据库恢复

数据库完整还原的目的是还原整个数据库. 整个数据库在还原期间处于脱机状态.在数据库的任何部分变为联机之前,必须将所有数据恢复到同一点,即数据库的所有部分都处于同一时间点并且不存在未提交的事务. 在完整恢复模式下,数据库可以还原到特定时间点.时间点可以是最新的可用备份.特定的日期和时间或者标记的事务. 还原完整数据库步骤 通常,将数据库恢复到故障点分为以下几个步骤: 1. 备份活动事务日志(称为尾部日志).此操作将创建结尾日志备份.如果活动日志不可用,则该日志部分的所有事务将全部丢失. 注:在完整

Atitit.Gui控件and面板----数据库区-mssql 2008 权限 配置 报表查看成员

Atitit.Gui控件and面板----数据库区-mssql 2008 权限 配置 报表查看成员 1. 配置服务器连接权限 1 2. 配置数据库权限 1 3. 设置表格/视图安全性 2 1. 配置服务器连接权限 配置服务器登录--数据库级别的[安全性]-[登录名]-[新建登录名] 角色::public 作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:[email protected] 转载请注明来源: http://blog.csdn.net/attilax 2. 配置数据库权限

php扩展mssql.so连接sqlserver2008

1.安装配置freetds  wget http://mirrors.xmu.edu.cn/ubuntu/archive/pool/main/f/freetds/freetds_0.82.orig.tar.gz tar zxf freetds_0.82.orig.tar.gz cd freetds_0.82 ./configure --prefix=/usr/local/freetds --with-tdsver=8.0 -–enable-msdblib -–enable-dbmfix -–wi

MSSQL 2000 错误823恢复数据案例

一.故障描述 MSSQL Server 2000 附加数据库错误823,附加数据库失败.数据库没有备份,不能通过备份恢复数据库,急需恢复数据库中的数据. 二.故障分析 SQL Server数据库 823 错误的原因一般是:数据库物理页面损坏,有时可能是页面有但是校验值损坏,导致无法识别该页面,也有可能因为断电或者文件系统问题出现页面丢失了也会报这个823错误. 三.恢复过程 1 尝试附加数据库,然后修复数据库 图一: 2 使用北亚MSSQL文件检测工具对数据库进行检测 图二: 3 计算并修改数据

ms-sql 给表列添加注释

需求: 在创建数据库是对相应的数据库.表.字段给出注释. 解决方案: 首先,要明确一点的是注释存在sysproperties表中而不是跟创建的表捆绑到一起的(我的理解). 一.使用SQL Server窗口创建表是会有注释窗口: 二.使用SQL语句的comment语句,该语句放置在create table()后面,如: comment on table table_name is 'table_mark' comment on column table_name."Column" is

数据批量插入MSSQL

MSSQL数据批量插入优化详细 序言 现在有一个需求是将10w条数据插入到MSSQL数据库中,表结构如下,你会怎么做,你感觉插入10W条数据插入到MSSQL如下的表中需要多久呢? 或者你的批量数据是如何插入的呢?我今天就此问题做个探讨. 压测mvc的http接口看下数据 首先说下这里只是做个参照,来理解插入数据库的性能状况,与开篇的需求无半毛钱关系. mvc接口代码如下: public bool Add(CustomerFeedbackEntity m) { using (var conn=Co

Nodejs之mssql模块的封装

在nodejs中,mssql模块支持sqlserver数据库操作.今天将mssql模块的某些功能封装为一个类,方便以后调用.封装的功能有执行存储过程,执行查询语句操作等.如果本篇文章对大家有帮助,那就再好不过了! 要使用mssql模块,请先用npm加载到项目中.加载过程:打开cmd命令框,定位到项目的根目录下,输入npm install mssql --save ,然后按回车键就OK! 封装的代码如下: //导入mssql模块 var mssql=require("mssql"); v

.NET+IIS+MSSQL配置

好久没配置.NET+IIS+MSSQL了,跟以前不大一样了.总结下吧. 环境: Windows Server 2012 标准版 x64 SQL Server Express 2014 一.HTTP Error 500.19 - Internal Server Error 错误提示: HTTP Error 500.19 - Internal Server Error,无法访问的请求野蛮,因为该页的相关配置数据无效配置错误: 不能在此路径中使用此配置节.如果在父级别上锁定了该节,便会出现这种情况.锁