第一章 数据库的设计

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. Hbuilder开发HTML5 APP之侧滑菜单

    1.思路: 其时有2个WebView,一个main是用来装主页面,一个menu是用来装菜单(为提高性能,菜单项是采用了预加载方式的,预加载时为了避免和主页面争夺资源,采用延时加载,例如: //plus ...

  2. Hbuilder开发HTML5 APP之创建子页面

    折腾了好久,终于看明白怎么创建了: 1.创建个html5的mui页面,在其初始化方法中: mui.init({   subpages:[{    id:"list",   url: ...

  3. 通过远程 http API 来控制 lnmp 环境的重启perl脚本

    #!/usr/bin/perl use DBD::mysql; use strict; use warnings; use DBI; use utf8; binmode(STDOUT, ':encod ...

  4. [每日电路图] 10、两种MOS管的典型开关电路

    下图是两种MOS管的典型应用:其中第一种NMOS管为高电平导通,低电平截断,Drain端接后面电路的接地端:第二种为PMOS管典型开关电路,为高电平断开,低电平导通,Drain端接后面电路的VCC端. ...

  5. SQL语句全

    创建数据库 创建之前判断该数据库是否存在 if exists (select * from sysdatabases where name='databaseName') drop database ...

  6. Android Fragment 使用技巧

    1. Fragment 使用时要有一个无参构造函数 如果没有无参构造函数,而是像按照普通类来使用,只创建有参构造函数,则会出现 android.support.v4.app.Fragment$Inst ...

  7. WPF入门教程系列二十三——DataGrid示例(三)

    DataGrid的选择模式 默认情况下,DataGrid 的选择模式为“全行选择”,并且可以同时选择多行(如下图所示),我们可以通过SelectionMode 和SelectionUnit 属性来修改 ...

  8. jdk1.7.0_80源码包结构

    解压源码src.zip,jdk源码结构如下所示: src |--com.sun    sun公司对jdk的实现,Oracle官方不支持,不保证跨平台(可能一些类linux有而windows没有),甚至 ...

  9. 浅谈linux 下,利用Nginx服务器代理实现ajax跨域请求。

    ajax跨域请求对于前端开发者几乎在任何一个项目中都会用到,众所周知,跨域请求有三种方式: jsonp; XHR2 代理: jsonp: 这种应该是开发中是使用的最多的,最常见的跨域请求方法,其实aj ...

  10. isPrototypeOf&&getPrototypeOf

    在JavaScript这个一切皆为对象的世界里,难免会判断原型链的问题.那么我们就有必要了解了解isPrototypeOf和getPrototypeOf这两个方法咯. 1.isPrototypeOf ...