ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 以前学习sql的一点总结

以前学习sql的一点总结

原创 Linux操作系统 作者:iSQlServer 时间:2009-07-13 13:04:50 0 删除 编辑

总结一下以前对于sql的学习,给自己留下点东西。

1.三个范式指导如何建表:(一个业务对象用一张表来存放)

  第一范式: 设计表时,一个字段存放一个独立完整的信息片,一个基本信息单元放在一个字段(字段都是单一属性的,不可再分)。

  第二范式: 表中要有候选键,表中的一个字段或多个字段可以唯一确定表中的其他信息。

  第三范式: 不存在传递依赖。

2.事务:ACID(使用加锁和日志技术确保操作的不可分割性(要么都执行成功,要么都不执行))

  Atomic 事务不可分割性。

  Consistent 事务发生前和完成后,数据是合理,完整的。

  Isolated 事务涉及到的数据在执行过程中其他会话/线程是看不到的。

  Durable 事务对数据的改变时具有持久性的影响。

3.视图:

  不能接收参数 

  屏蔽了数据库中表的结构,保护了数据库

  使用起来像一张表

建议在视图上只做查的操作

4.主外键的作用:

  候选键:一个字段或多个字段能够唯一的确定表中的所有字段

  主键:表中的一个或多个字段的组合,唯一的标示表中的一行(在表中唯一的确定一条记录)

  外键:A表主键 也出现在B表中,那么B表字段叫做外键

  外键作用:保证数据完整性(外键表中字段必须在A表中)

5.存储过程:(经过编译了的,存储在数据库的一次执行的,批处理SQL语句)

  数据库服务器执行sql命令的顺序:

A.检查语法 B.编译 C.优化 D.执行

  对于存储过程A和B只执行一次,C只有在缓存中没有的时候才再次执行,其余情况下,都只需要执行D。

优点:快,安全(可以赋权限),写一次可被很多客户端应用程序访问,减少客户端编程的复杂性

两句英文的说明,写的不错:

Clients donnot need to know anything about the database except the input and output structure of the stored procedure.

Changes can be made to database structures without breaking client code.

6.触发机制:

  必须寄生/依赖于表,特点是自动执行 缺点:带来的bug很难发现

  不接收参数和返回值,是特殊的存储过程,当表中的内容发生改变时,由系统调用执行

7.几个简单的通配符:

  [严高]方括号 代表一个字符,要么是严,要么是高

   [^严]不是这个字符的

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16436858/viewspace-608979/,如需转载,请注明出处,否则将追究法律责任。

上一篇: SQL Server函数总结
请登录后发表评论 登录
全部评论

注册时间:2008-10-17

  • 博文量
    1319
  • 访问量
    2074300