优化MySchool数据库设计
第一章 数据库的设计
1.E-R图中:
矩形:实体
椭圆:属性
菱形:关系
直线:连接实体,属性和关系
2.映射基数
一对多
多对一
多对多
3.范式:
第一范式:确保每列的原子性
第二范式:确保表中的每列都和主键相关
第三范式:确保表中的每列都和主键有直接关系,而不是间接关系
第二章 数据库的实现
1.创建数据库
use master
go
create database 数据库名
on
(
)
log on
(
)
go
2.删除数据库
drop database 数据库名
3.创建表
use 数据库名
go
create table 表名
(
列名 数据类型,
列名 数据类型,
..........
)
go
4.添加约束
alter table 表名
add constraint 约束名 约束类型
约束语句
第三章 SQL编程
1.局部变量
declare 变量名称 变量类型
局部变量以@开头
2.全局变量
@@error 最后一个错误的错误号
全局变量以@@开头
3.print 输出变量或字符串
4.cast和convert的数据类型转换
case( 变量 as 数据类型 )
convert( 数据类型,变量)
cast 和 convert不同:convert可以时间格式时间改变
5.if-else
if(条件) 条件语句
begin
代码块
end
else
begin
代码块
end
6.while循环语句
while(条件)
begin
代码块
end
7.case多分支语句
case
when 条件1 then 代码块
when 条件2 then 代码块
[else其他结果]
end
第四章 高级查询
1.简单子查询和not in 、in之间的区别
in(not in)返回的不止一条数据
简单子查询返回的则必须是一条数据
2.分页查询
select top 2 id from A where not in(select top 4 id from B)
3.相关子查询和非相关子查询的不同:
相关子查询的内部查询不止执行一次,而且执行一次便把结果返回给外部查询
第六章 事务、视图和索引
1.执行事务SQL语句
begin tran
开始事务
rollback tran
回滚事务
commit tran
提交事务
2.事务分类:
a.显式事务
b.隐式事务
c.自动提交事务
3.视图创建
create view 视图名称
as
查询语句
4.索引的分类:
唯一索引、主键索引、聚集索引、非聚集索引、复合索引、全文索引
5.创建索引
create 索引类型 index 索引名 on 表名(列名,[列名])
[with fillfactor=x]
x为0~100
表示为百分之几
第七章 存储过程
1.存储过程的优点
模块化程序设计、执行速度快,效率快、减少网络流量、具有良好的安全性
2.系统存储过程为sp_开头,扩展存储过程为xp_开头,自定义存储过程为usp_开头
3.创建自定义存储过程
create proc usp_
@参数 参数类型,
..........
as
SQL语句
4.想要从存储过程输出得到的值,则在参数类型加个output即可
create proc usp_
@参数 参数类型 output,
..........
as
declare @a 参数类型
exec usp_ @a output
print @a
便可以得到存储过程中的值
优化MySchool数据库设计的更多相关文章
- 优化MySchool数据库设计之【巅峰对决】
优化MySchool数据库设计 之独孤九剑 船舶停靠在港湾是很安全的,但这不是造船的目的 By:北大青鸟五道口原玉明老师 1.学习方法: 01.找一本好书 初始阶段不适合,可以放到第二个阶段,看到知识 ...
- 优化MySchool数据库设计总结
数据库的设计 一:什么是数据库设计? 数据库设计就是将数据库中的数据实体以及这些数据实体之间的关系,进行规范和结构化的过程. 二:为什么要实施数据库设计? 1:良好的数据库设计可以有效的解决数据冗 ...
- accp7.0优化MySchool数据库设计内测笔试题总结
1) 在SQL Server 中,为数据库表建立索引能够(C ). 索引:是SQL SERVER编排数据的内部方法,是检索表中数据的直接通道 建立索引的作用:大大提高了数据库的检索速度,改善数据库性能 ...
- S2--《优化MySchool数据库设计》总结
第一章 数据库的设计 1.1 数据库设计 数据库中创建的数据库结构的种类,以及在数据实体之间建立的复杂关系是决定数据库系统效率的重要因素. 糟糕的数据库设计表现在以下两个方面: *效率低下 * ...
- <<MySchool数据库设计优化>> 内部测试
1) 在SQL Server 中,为数据库表建立索引能够( C ). A. 防止非法的删除操作 B. 防止非法的插入操作 C. 提高查询性能 D. 节约数据库的磁盘空间 解析:索引的作用是通过使用索引 ...
- 《MySchool数据库设计优化》内部测试
1) 在SQL Server 中,为数据库表建立索引能够( C ). A. 防止非法的删除操作 B. 防止非法的插入操作 C. 提高查询性能 D. 节约数据库的磁盘空间 解析:索引的作用是通过使用索引 ...
- 优化MySchool数据库(一)
<优化MyShcool数据库>:能够的独立的分析|设计|创建|运营|你的独立的数据库系统 设计--->实现--->TSQL--->查询优化---->性能优化技术-- ...
- 优化MySchool数据库(二)
优化School数据库(TSQL建库建表建约束) 使用T_sql代码建库.建表.建约束: 建库: Create database HotelManagerSystem on ( ---- 数据文件-- ...
- 优化MySchool数据库(存储过程)
什么是“存储过程”: ---- 数据库中,用于存储“业务逻辑”的技术!(T-SQL代码当做数据一样保存到数据可) 语法 : [if exists(select * from sysobjects wh ...
随机推荐
- for循环中的占位 pass
- CYQ.Data V5 数据库读写分离功能介绍
前言 好多年没写关于此框架的新功能的介绍了,这些年一直在默默地更新,从Nuget上的记录就可以看出来: 这几天在看Java的一些东西,除了觉的Java和.NET的相似度实在太高之外,就是Java太原始 ...
- 简单明了区分escape、encodeURI和encodeURIComponent
一.前言 讲这3个方法区别的文章太多了,但是大部分写的都很绕.本文试图从实践角度去讲这3个方法. 二.escape和它们不是同一类 简单来说,escape是对字符串(string)进行编码(而另外两种 ...
- 在JQ中关于this
this的相关问题 this指代的是什么 这个应该是比较好理解的,this就是指代当前操作的DOM对象. 在jQuery中,this可以用于单个对象,也可以用于多个对象. $('btn').click ...
- 详解 JavaScript的 call() 和 apply()
定义 ECMAScript规范为所有函数都包含两个方法(这两个方法非继承而来), call 和 apply .这两个函数都是在特定的作用域中调用函数,能改变函数的作用域,实际上是改变函数体内 this ...
- iOS-屏幕适配-UI布局
iOS 屏幕适配:autoResizing autoLayout和sizeClass 一.图片解说 -------------------------------------------------- ...
- PHP SESSION机制,从存储到读取
PHP中,如果要获取SESSION数据,必须要有对应的session_id,session_id的获取方式有两种 1.基于客户端的cookie 2.基于url 先说第一种情况,基于客户端的cookie ...
- 把w3schools英文版的所有属性扒下来了,免费分享。
为了方便查手册等,把w3schools上的所以属性弄成json版的了,到时候再修改一下,查起来就比较方便了,这里免费分享一下.一共为两份,一份为选择器部分,还有一部分是属性. 选择器部分json 属性 ...
- CSS3 Media Queries实现响应式布局
概念我就不在这里写啦.大家可以看看以下网页: http://www.runoob.com/cssref/css3-pr-mediaquery.html http://www.w3cplus.com/c ...
- 详解Java中ArrayList、Vector、LinkedList三者的异同点(转)
本文转自http://my.oschina.net/zzw922cn/blog/491631 一.ArrayList ArrayList是一个可以处理变长数组的类型,这里不局限于“数”组,ArrayL ...