数据库设计总结

转自http://blog.csdn.net/lifuxiangcaohui/article/details/7642346


数据库基础概念

数据库,表,列,主键,外键, 数据类型。
1.事务http://www.cnblogs.com/samwu/archive/2011/09/07/2169851.html
2.锁机制
http://www.cnblogs.com/samwu/archive/2011/09/19/2181506.html其中,事务的隔离机制 会影响 增删查改的锁机制。
3.完整性约束,包括主键约束,外键约束,唯一约束,数据类型约束,不为空约束,自定义约束。
4.范式 http://www.cnblogs.com/samwu/archive/2011/09/07/2169629.html
5.E-R图 http://www.cnblogs.com/samwu/archive/2011/09/07/2169842.html
6.数据库生命周期
http://www.cnblogs.com/samwu/archive/2011/09/07/2169829.html
7.数据流程图,数据字典(可不了解)
8.14个数据库设计中技巧(转)
http://www.cnblogs.com/samwu/archive/2011/09/07/2169631.html

书籍推荐:《数据库原理及设计》


SQL语言实用技巧

1.分页存储过程。
2.触发器使用。
3.数据库自定义函数使用。
4.游标使用。
5.连续日期查询。
http://www.cnblogs.com/samwu/archive/2011/09/15/2177176.html
6.生成连续日期。
http://www.cnblogs.com/samwu/archive/2011/09/27/2192953.html
7.综合SQL查询,一道员工与部门查询的SQL笔试题。
http://www.cnblogs.com/samwu/archive/2011/09/27/2192934.html
8.SQL养成一个好习惯是一笔财富。http://kb.cnblogs.com/page/103705/


插入,更新,删除,查询

1.SQL聚合函数,MAX(最大值)、MIN(最小值)、AVG(平均值)、SUM (和)、COUNT(数量)。
2.数据排序,ORDER BY子句位于SELECT语句的末尾,它允许指定按照一个列或者多个列进行排序,还可以指定排序方式是升序(从小到大排列,ASC)还是降序(从大到小排列,DESC)。
3.通配符过滤 ,单字符匹配的通配符为半角下划线“_”,多字符匹配的通配符为半角百分号“%”,它匹配任意次数(零或多个)出现的任意字符。
4.空值处理,数据库中,一个列如果没有指定值,那么值就为null,这个null和C#中的null,数据库中的null表示“不知道”,而不是表示没有。SQL中使用is null、is not null来进行空值判断。
5.多值匹配,SELECT FAge,FNumber,FName FROM T_Employee WHERE FAge IN (23,25,28)。
6.数据分组,GROUP BY子句必须放到WHERE语句的之后,没有出现在GROUP BY子句中的列是不能放到SELECT语句后的列名列表中的 (聚合函数中除外)。
7.Having语句,在Where中不能使用聚合函数,必须使用Having,Having要位于Group By之后,注意Having中不能使用未参与分组的列,Having不能替代where。作用不一样,Having是对组进行过滤。
8.限制结果集行数,也就是top关键字,SQLServer2005后增加了Row_Number函数简化实现,通常用于分页。
9.去掉数据重复,DISTINCT是对整个结果集进行数据重复处理的,而不是针对每一个列。(忘了)
10.联合结果集,union关键字,基本的原则:每个结果集必须有相同的列数;每个结果集的列必须类型相容。union关键字合并两个查询结果集,并且将其中完全重复的数据行合并为一条。union关键字因为要进行重复值扫描,所以效率低,因此如果不是确定要合并重复行,那么就用union all关键字。


各种查询函数

数字函数

ABS() ,求绝对值。CEILING(),舍入到最大整数 。3.33将被舍入为4、2.89将被舍入为3、-3.61将被舍入为-3。
FLOOR():舍入到最小整数。3.33将被舍入为3、2.89将被舍入为2、-3.61将被舍入为-4。
ROUND():四舍五入。 例如,select round(3.14666,2)结果是3.15000,select round(3.14666,3)结果是3.14700。

字符串函数

日期函数

类型转换函数

空值处理函数

case函数


索引

全表扫描:对数据进行检索(select)效率最差的是全表扫描,就是一条条的找。使用索引能提高查询效率,但是索引也是占据空间的,而且添加、更新、删除数据的时候也需要同步更新索引,因此会降低Insert、Update、Delete的速度。只在经常检索的字段上(Where)创建索引。即使创建了索引,仍然有可能全表描,比如like、函数、类型转换等。http://www.cnblogs.com/xioxu/archive/2010/10/20/1857119.html
表连接,join是和哪个表连接,on后是连接的关系是什么。内连接inner join,左连接left join,右连接right join,
http://www.cnblogs.com/doucontorl/archive/2010/09/06/1819419.html
子查询:http://www.cnblogs.com/edisonfeng/archive/2011/07/02/2096403.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值