设计
需求分析阶段:分析客户的业务和数
概要设计阶段:绘制数据库的E-R模型图,确认需求信息的完整性和正确性详细设计阶段:将E-R图转换为多张
绘制E-R(实体-关系)图
1、实体:现实世界中具有区分其他事物的特征或属性并与其他实2、属性:实体的特征,属性对应表的列。3、关系:两个或多个实体之间的联系。
4、映射基数关系:一对一、一对多、多对一、多对多5、实体关系图:
1、矩形表示实体类2、椭圆形表示属性3、菱形表示关系集
4、直线用来连接属性和实体集,也
数
目标是确保每列的原子性,如果每列在第一范式的基础上更进一层,目标
理主键以外的其他列,都依赖于该主键,则满足第二范式。在第二范式的基础上更进一层,目标
二范式,并且除了主键以外的列都不依赖与主键列,则满足第三范式
第一范式:第二范式:第三范式:
规范化和性能的关系:
为了满足三大范式,我们的数据操作性能会受到相应的影响
各种数据操作异常,又要考虑数据访问性能。有时,为了减少表间连接,提高数据库的访问性能,允许
数
数据库文件的组成:
主数据文件:*.mdf次要数据文件:*.ndf日志文件:*.ldf
创建数据库:
create database 数据库名on(
name=逻辑文件名,filename=物理文件名,size=文件大小,maxsize=最大容量,filegrowth=增长量)log on(
name=逻辑文件名,filename=物理文件名,size=文件大小,filegrowth=增长量)go
删除数据库:
需注意的技能点:具体操作:drop database 数据库名称
在删除出一个数据库文件之前,需要if exists (select * from sysdat
SQL Serv
int
整型smallinttinyintnumericrealfloatdecimalchar
浮点型
字符型
varchartextnchar
unicode
nvarcharntext
是/否行二进制型货币型日期时间型
bitbinaryvarbinaryimagemoneysmallmoneydatetimesmalldatetimetimestampuniqueidentifier
说明:
如果一个列设置了为text数据类型,
特殊类型
create table 表名(
字段1 数据类型 列的特征(例如:是否为空,是否为自动字段2 数据类型 列的特征…)go注解:
设置标识列:identity(标识种子列
语法:注意:
drop table 表名
(1)、如果对一个表进行删除操作时sysobjects where name = '表名')(2)、如果使用delete对一个表进行
使用T-SQL语句创建和删除约束
Primary Key constraintUnique constraintCheck constraintDefault constranintForeign Key constraint
主键约束:唯一约束:检查约束:默认约束:外键约束:添加主键约束:添加唯一约束:添加默认约束:添加检查约束:添加外键约束:删除约束条件:
alter table 表名 add constraint pk_(主键列名称) primary key (主键alter table 表名 add constraintalert table 表名 add constraint的列名)
alert table 表名 add constraintalert table 表名 add constraint列名称)
alert table 表名 drop constraint 约束名
使用T-SQL语句创建登录
(1)、Windows身份验证:exec sp_g
(2)、SQL Server身份验证:exec sp_addlogin '用户名','密码'exec sp_grantdbaccess '登录帐户例句:grant select , insert ,
创建登录帐户:
创建数据库用户:给数据库用户授权
局部变量:
声明语句变量的语法:局部变量赋值的方法:
局部变量的名称以标记@作为前缀declare @variable_name DateType(1)、set 局部变量的名称 = value
(2)、select 局部变量的名称 = valueSQL Server 中的全局变量都使用@@
全局变量:
常用
@@error'@@identity'@@language'
@@max_connections'@@rowcount'@@servername'@@servicename'@@timeticks'’@@transcount'输出语句:
print 局部变量或字符串
select 全局变量 as 自定义列名
逻
if(条件)
begin 语句1 语句2 ... endelse
...
while(条件) begin
语句或语句块 break end
case
when 条件1 when 条件2 end
if-else条件语句
while循环语句
case多分支语句
批处理语句:即在每个执行语句的最后加上\"go\";它的好处是简化
简
select … from 表1 where 字段1 IN 和 NOT IN 子查询:
(1)、select … from 表1 where 字段1 in (子查询)(2)、select … from 表1 where 字子查询查询到底的结果必须一个列,EXISTS 和
if exists(子查询)(也可以作为whi
第一种方法:第二种方法:
注意:
用法:
联合(union)----合并多个数据表中的行
合并多个表中的数据有三种
子查询----将一个查询包含到另一个
方法
连接----合并多个数据表中的列
事务的概念
事务是一个机制、一个操作序列,它
提交或撤销操作请求,即这一组数据库命令要么都执行,要么都不执行,因辑单元,在数据库系统上执行并发操作时事务是作为最小的控制单元来使用作的数据库系统。
原子性一致性
事务的四大属性
隔离性持久性开始事务提交事务回滚(撤销)事务显示事务(最常用的)
隐式事务
自动提交事务
创建事务的步骤
事务的分类
索引的概念索引的用途
索引是某个表中一列或这若干列值的
索引提供指针以指向存储在表中指定
的方式与使用书的目录很相似:通过搜索索引找到特定的值,然后跟随指针
索引索引页索引的作用注意:
它是SQL Server编排数据的内部方法,为SQL Server提供一种方法来编排查(词)典中按拼音或笔画排序的目录。数据库中存储索引的数据页。索引页通过使用索引,可以大大提高数据库如果数据中存在重复的键值,则一般
唯一索引
索引的分类主键索引聚集索引
创建索引
使用Microsoft SQL Server Manager Studio创建索引
创建索引
使用T-SQL创建索引
create [unique] [clustered | no
on table_name (column_name[,column_name]...)
使用T-SQL创建索引的语法[with
fillfactor = x]
(1)、unique指定唯一索引,可选
语法说明:(2)、clustered、nonclustered指定
(3)、fillfactor表示填充因子,指定一个0-100的值,该值指示索引页填满检查索引是否存在的方法:if exists(select name from sysi(1)、该列用于频繁搜素
(2)、该列用于对数据进行排序(1)、列中仅包含几个不同的值
不要对以下的列创建索引:
(2)、表中仅包含几行。需要建立索引的列的标准:
使用视图的原因
视图的概念
视图通常用来进行一下的3个操作
一、处于安全的考虑,用户不必看到二、符合用户日常业务逻辑,使他们视图是另一种查看数据库中一个或多
表 的行或列的子集创建的。视图并不是数据库中存储的数据值的集合,它在执行时,直接显示来自表中的数据。视图充当着查询中指定的表的筛选器筛选表中的行。
防止未经许可的用户访问敏感数据。将多个物理数据表抽象为一个逻辑数对最终用户
视图给用户的好处对开发人员
1、使用Microsoft SQL Server Man2、使用T-SQL语句创建,语法如下create view view_name as
Copyright © 2019- haog.cn 版权所有 赣ICP备2024042798号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务