• 数据库设计(1)


    建表


    保证数据完整性:
    。主键、unique、标识列
    。外键
    。类型
    。约束:是否允许为null,默认值

    在某个字段上应用primary key或unique约束,默认会自动生成一个唯一索引。索引是能提高许多数据库操作性能的对象,能使web应用程序运行更快

    性能:
    。索引


    外键(多)所对应的主键(一)必须是唯一键或主键,注意不能是仅为标识列,并且不能为null
    外键:
    。强制外键约束(Enforce Foreign Key Constraint):这是针对 对外键表的增、改以及主键表的删、改的数据完整性检查
    。Insert和Update规范(Insert  and Update specification):针对 对主键表的删、改,对应的外键表所采取的相应措施(?不明白为什么是insert规范)
    。强制用于复制(Enforce For Replication):这个选项应用于数据库复制。复制是一种技术,可以使位于不同地方的SQL Server中的数据保持同步


    在我们将某一列设置为标识列之后,SQL Server默认不允许手动修改该列的值。因此在SQL表创建脚本中出现了如下所示的命令,它允许临时向标识列插入自定义数据:
    SET IDENTITY_INSERT Departments ON

    标识列所生成的值在表的生命周期中是唯一的。在生成一个值之后,就不会再次生成了,即使你删除了表中的所有行。如果想让SQL Server重新从初始值开始生成,必须删除并重新创建表或是用SQL命令TRUNCATE去截断表。截断表跟删除并重新创建表的效果一样


    what 索引

    索引是一种特殊的数据库对象,用来提高数据库操作的整体速度。它通过维护特殊的数据结构来映射已索引表的内容,这将大大加速该表的查找操作

    why 索引以及它的弊端

     索引将能够提高从表中读取数据的速度,但会降低插入,删除,更新操作的速度,因为使用这些操作,数据服务器不仅需要修改该表,还要修改索引创建的额外的数据结构。在实际的应用程序中,绝大多数的数据库操作都是读取操作,因此使用索引将会明显提高性能


    在一个表中可以创建多个索引,每个索引可以包含一个或多个列。当一个表按某个列创建了索引后,不是行被索引,就是根据该列的值和索引类型被物理索引


    对于索引,应该注意以下内容:

    • 索引可以加快数据库查询操作,但同时会减慢更改数据库的操作(删除、更新和插入操作)。
    • 太多索引会降低数据库性能。通常的做法是,在where,order by 和 group by子句中常用的列,以及常用于表连接、与其他表进行关联的外键列创建索引
    • 默认情况下,主题和唯一表列会自动创建索引

  • 相关阅读:
    实战之中兴ZXHN F460光猫破解超级密码+开启无线路由功能
    彻底弄懂css中单位px和em,rem的区别
    IntelliJ 2016.02设置maven 阿里云加速
    Mac 下 Intellij IDEA 2016.1.2+maven+jetty+ JRebel 6.4.3 破解+spring mvc
    javascript createElement ttf
    Spring MVC 4.2 增加 CORS 支持 Cross-Origin
    Maven根据不同个环境打包, 获取不同的配置文件等等
    HTML5播放器
    spring mvc 4数据校验 validator
    osx 文本编辑工具下载地址Sublime Text 3
  • 原文地址:https://www.cnblogs.com/eversteins/p/2190254.html
Copyright © 2020-2023  润新知