优化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 ...
随机推荐
- 生活中的OO智慧——大话面向对象五大原则
世间万物,以俗眼观纷纷各异,以道眼观种种是常.面向对象思想不仅是编程的智慧,同样也是人生的智慧.通过生活去领悟面向对象的智慧,以面向对象的智慧来指导生活. (部分图片取自How I explained ...
- RBAC模型速记
RBAC Model core concept: user,role,permission,operation,resource user has many roles, assign role to ...
- Scrum Guide - Scrum指南中文版
现在公司在使用敏捷开发模式进行日常的开发和管理工作,所以我看了下Ken Schwaber的<Scrum Guide>这本小册子,原本是英文的,这里提供中文的,以供日后复习和参考. Scru ...
- 那些证书相关的玩意儿(SSL,X.509,PEM,DER,CRT,CER,KEY,CSR,P12等)
之前没接触过证书加密的话,对证书相关的这些概念真是感觉挺棘手的,因为一下子来了一大堆新名词,看起来像是另一个领域的东西,而不是我们所熟悉的编程领域的那些东西,起码我个人感觉如此,且很长时间都没怎么搞懂 ...
- MySQL MVCC(多版本并发控制)
概述 为了提高并发MySQL加入了多版本并发控制,它把旧版本记录保存在了共享表空间(undolog),当事务提交之后将重做日志写入磁盘(前提innodb_flush_log_at_trx_commit ...
- JVM系列-分代收集垃圾回收
Java自动垃圾回收(Automatic Garbage Collection)是自动回收堆上不再使用的内存,new的对象在程序中没有引用指向它,就会被回收.回收的实现很多,有Reference Co ...
- Objective-C 工厂模式(下) -- 抽象工厂模式
相比简单工厂模式, 只有一个工厂 能生产的手机也是固定的 抽象工厂模式类似于有很多家工厂, 当用户要买什么手机就创建对应的工厂去生产 比如用户要买iPhone就创建一个Apple工厂来生产手机, 要买 ...
- [python] 安装numpy+scipy+matlotlib+scikit-learn及问题解决
这篇文章主要讲述Python如何安装Numpy.Scipy.Matlotlib.Scikit-learn等库的过程及遇到的问题解决方法.最近安装这个真是一把泪啊,各种不兼容问题和报错,希望文章对你有所 ...
- 《FaceBook效应》——读后总结
这本书讲述了facebook从如何创建.到风靡全球,并结合facebook的网络效应讲述为什么facebook可以做到社交龙头.读这本书的时候,也可以看看<社交网络>这部电影. faceb ...
- FASTJSON
package com.hanqi.test; import java.util.ArrayList;import java.util.Date;import java.util.List; impo ...