第一章 数据库的设计

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数据库设计的更多相关文章

  1. 优化MySchool数据库设计之【巅峰对决】

    优化MySchool数据库设计 之独孤九剑 船舶停靠在港湾是很安全的,但这不是造船的目的 By:北大青鸟五道口原玉明老师 1.学习方法: 01.找一本好书 初始阶段不适合,可以放到第二个阶段,看到知识 ...

  2. 优化MySchool数据库设计总结

    数据库的设计   一:什么是数据库设计? 数据库设计就是将数据库中的数据实体以及这些数据实体之间的关系,进行规范和结构化的过程. 二:为什么要实施数据库设计? 1:良好的数据库设计可以有效的解决数据冗 ...

  3. accp7.0优化MySchool数据库设计内测笔试题总结

    1) 在SQL Server 中,为数据库表建立索引能够(C ). 索引:是SQL SERVER编排数据的内部方法,是检索表中数据的直接通道 建立索引的作用:大大提高了数据库的检索速度,改善数据库性能 ...

  4. S2--《优化MySchool数据库设计》总结

    第一章    数据库的设计 1.1  数据库设计 数据库中创建的数据库结构的种类,以及在数据实体之间建立的复杂关系是决定数据库系统效率的重要因素. 糟糕的数据库设计表现在以下两个方面: *效率低下 * ...

  5. <<MySchool数据库设计优化>> 内部测试

    1) 在SQL Server 中,为数据库表建立索引能够( C ). A. 防止非法的删除操作 B. 防止非法的插入操作 C. 提高查询性能 D. 节约数据库的磁盘空间 解析:索引的作用是通过使用索引 ...

  6. 《MySchool数据库设计优化》内部测试

    1) 在SQL Server 中,为数据库表建立索引能够( C ). A. 防止非法的删除操作 B. 防止非法的插入操作 C. 提高查询性能 D. 节约数据库的磁盘空间 解析:索引的作用是通过使用索引 ...

  7. 优化MySchool数据库(一)

    <优化MyShcool数据库>:能够的独立的分析|设计|创建|运营|你的独立的数据库系统 设计--->实现--->TSQL--->查询优化---->性能优化技术-- ...

  8. 优化MySchool数据库(二)

    优化School数据库(TSQL建库建表建约束) 使用T_sql代码建库.建表.建约束: 建库: Create database HotelManagerSystem on ( ---- 数据文件-- ...

  9. 优化MySchool数据库(存储过程)

    什么是“存储过程”: ---- 数据库中,用于存储“业务逻辑”的技术!(T-SQL代码当做数据一样保存到数据可) 语法 : [if exists(select * from sysobjects wh ...

随机推荐

  1. Ubuntu添加开机自动启动程序方法

    1. 开机启动时自动运行程序  Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init.init根据配置    文件继续引导过程,启动其它进程.通常情况下,修改放置在      / ...

  2. Tomcat启动失败Unrecognized Windows Sockets error: 0: JVM_Bind

    问题:Tomcat一直无法运行,或者是运行了报上面图片的哪些错误. 解决:关闭myeclipse,打开任务管理器(Ctrl+Alt+Delete)关闭javaw.exe这个进程,另外说一下,Tomca ...

  3. Replication的犄角旮旯(三)--聊聊@bitmap

    <Replication的犄角旮旯>系列导读 Replication的犄角旮旯(一)--变更订阅端表名的应用场景 Replication的犄角旮旯(二)--寻找订阅端丢失的记录 Repli ...

  4. Edge.js:让.NET和Node.js代码比翼齐飞

    通过Edge.js项目,你可以在一个进程中同时运行Node.js和.NET代码.在本文中,我将会论述这个项目背后的动机,并描述Edge.js提供的基本机制.随后将探讨一些Edge.js应用场景,它在这 ...

  5. ABP理论学习之NHibernate集成

    返回总目录 本篇目录 Nuget包 配置 实体映射 仓储 仓储基类 实现仓储 自定义仓储方法 阅读其他 ABP可以使用任何ORM框架工作,并且已经内置了NHibernate集成.这篇文章会解释如何在A ...

  6. 探索c#之一致性Hash详解

    阅读目录: 使用场景 算法原理 虚拟节点 代码示例 使用场景 以Redis为例,当系统需要缓存的内容超过单机内存大小时,例如要缓存100G数据,单机内存仅有16G时.这时候就需要考虑进行缓存数据分片, ...

  7. Mycat 全局系列号

    标签:utf8 概述 本篇文章介绍mycat怎样在分库分表的情况下保证主键的全局唯一方法,接下来就来分析三种方法各自的优缺点. 配置 文件方式获取 1.修改server配置文件 vim server. ...

  8. Outlook HTML渲染引擎

    OutLook始终不离不弃 是不是很讨厌为Email代码兼容Outlook? 太遗憾了!虽然光都有尽头,但Outlook始终存在. 为了应付Email的怪癖,我们花了很多时间测试,确保我们搞定了所有O ...

  9. 60分钟Python快速学习(给发哥一个交代)

    60分钟Python快速学习 之前和同事谈到Python,每次下班后跑步都是在听他说,例如Python属于“胶水语言啦”,属于“解释型语言啦!”,是“面向对象的语言啦!”,另外没有数据类型,逻辑全靠空 ...

  10. C语言 · 动态数组的使用

    从键盘读入n个整数,使用动态数组存储所读入的整数,并计算它们的和与平均值分别输出.要求尽可能使用函数实现程序代码.平均值为小数的只保留其整数部分. 样例输入: 5 3 4 0 0 2样例输出:9 1样 ...