MSSQL数据库设计心得
- 统一库名命名规则。 格式:公司简称_库名 如:Supesoft_Member 会员库
- 建库时,最好将初始大小设置为你认为可允许的最大容量。避免因为库太小,而出现系统自增加。在系统运行中,自动增加空间会影响数据库性能。另外,增加的空间可能和原来的空间不是在磁盘的连续存放位置,从而增加数据的访问时间。
- 建库时,有一个排规则。会对影响数据的存储格式。mssql默认的排序规则是不区分大小写和假名。像帐号系统中的用户名字段,区分和不区分就影响很大。排序规则在建库时可以选择。建好库后,建表时会默认使用建库的排序规则,你可以按字段来更改排序规则。
- 建表时统一命名规则。格式:系统简称_表名 如:FW_User 用户表
- 为表中的字段增加统一前辍。
表中最好包括以下字段:
IDX 自增加字段 int类型
STATUS 状态 0正常
ROWTIME 记录时间
ROWTIMEUPDATE 记录修改时间- 表名和字段名都大写。方便以后移到其它数据库。如oracle库,如果字段名不为大写,则要用单引号包括走来才能用。
- 字段名不要允许空值。如果搜索有空值的字段是不走索引的。
- 字段名不要设置默认值。统一通过程序来初始化值。
- 字符类型字段,如果不存中文请用varchar,如果有可能要存中文请用nvarchar。
- 字符类型字段长度尽可能50以上。曾经有个系统用户名字段是20位,后来数据量增加。需要支持邮箱当用户名增加到50位。数据库要修改,程序也要修改,如果外围有用“用户名”当唯一标识也要修改。
为表名及字段增加说明。好处是,可用生成工具生成对应的表说明文档。另外一些代码生成工具可以根据备注生成对应实体类说明。
表名说明:
execute sp_addextendedproperty 'MS_Description',
'用户表',
'user', 'dbo', 'table', 'FW_User'
go字段说明:
execute sp_addextendedproperty 'MS_Description',
'更新用户id',
'user', 'dbo', 'table', 'SYS_GROUP', 'column', 'ROWUSERID_U'
go
数据库文档生成工具
RedGate数据库工具.rar
http://115.com/lb/5lbdnl0tx0n1 115网盘礼包码:5lbdnl0tx0n1
DDBuildTools http://ddbuildtools.codeplex.com/- 聚合索引速度最快,建立在查询条件上。索引不要建的太多,会对插入数据速度有影响。
- 在设计树型分类结表时,增加一个排序字段.varchar(50) 一级为01二级为0101 三级为010101。每二位算一级。如果是varchar(50)最多可以支持25级。每级最多可以有99分类。这样设计好处是可以直对此字段排序就可以出现树型结构。

MSSQL数据库设计心得的更多相关文章
- 医生智能提醒小程序数据库设计心得——Legends Never Die
数据库设计心得 根据我们小组数据库设计的整个流程,我们将整个数据库设计划分为两个具体的阶段,在每个阶段需要进行不同的准备,有不同的注意事项,接下来我们将结合在数据库设计过程中遇到的一些问题和困难,提出 ...
- NoiseSystem数据库设计心得-洋芋好想飞
团队:洋芋好想飞 成员:乔祥硕 石高飞 杨慧慧 梁家豪 潘景渝 整理:乔祥硕 PM乔祥硕: 10月25日14:30到17:30,10月27日14:30到17:30,11月1日14:30到17:30,这 ...
- NoSql数据库 设计上面的一些心得
NoSql数据库这个概念听闻许久了,也陆续看到很多公司和产品都在使用,优缺点似乎都被分析的清清楚楚.但我心里一直存有一个疑惑,它的出现究竟是为了解决什么问题? 用户信息表,书籍信息表,用户为书籍打分信 ...
- 如何判断MSSQL数据库磁盘出现了瓶颈
问大神石沫:如何判断MSSQL数据库磁盘出现了瓶颈? 石沫(A1):您好,您的问题非常好,SQL SERVER提供了很多关于I/O压力的性能计数器,请选择性能计算器PhysicalDisk(Logic ...
- 数据库设计 Step by Step (1)——扬帆启航
引言:一直在从事数据库开发和设计工作,也看了一些书籍,算是略有心得.很久之前就想针 对关系数据库设计进行整理.总结,但因为种种原因迟迟没有动手,主要还是惰性使然.今天也算是痛下决心开始这项卓绝又令我兴 ...
- 如何从40亿整数中找到不存在的一个 webservice Asp.Net Core 轻松学-10分钟使用EFCore连接MSSQL数据库 WPF实战案例-打印 RabbitMQ与.net core(五) topic类型 与 headers类型 的Exchange
如何从40亿整数中找到不存在的一个 前言 给定一个最多包含40亿个随机排列的32位的顺序整数的顺序文件,找出一个不在文件中的32位整数.(在文件中至少确实一个这样的数-为什么?).在具有足够内存的情况 ...
- (转)Mysql数据库主从心得整理
Mysql数据库主从心得整理 原文:http://blog.sae.sina.com.cn/archives/4666 管理mysql主从有2年多了,管理过200多组mysql主从,几乎涉及到各个版本 ...
- MYSQL数据库设计之字段选择原则
关于字段的选择其实很多地方都有进行详细的介绍,我这里只写一下我在使用过程中的心得感受.如果想要全面的了解的话,大家可以去看高性能MYSQL这一本书籍,里面有一章节介绍的特别全面,基本涉及MYSQL中全 ...
- HNU_团队项目_数据库设计感想_个人感想
数据库设计感想 个人的一点心得体会 最重要的放在最前面——讨论开会时的123经验 开会前对会议目的及方式要有所考虑: 不要随意无目的开会: 遵守时间,控制会议时间长度: 会议主持人要维持会议只需,有 ...
随机推荐
- Python 3.5 socket OSError: [Errno 101] Network is unreachable
/******************************************************************************** * Python 3.5 socke ...
- Linux 链接网络
目录 查看网卡 存在多个网卡 网卡配置静态IP 报错总结 诚邀访问我的个人博客:我在马路边 更好的阅读体验点击查看原文:Linux链接网络 原创博客,转载请注明出处 @ Linux在安装系统结束后总要 ...
- DOM对象和JQuery对象互转
实现点击某一个单元格,将单元格内部的sql提交执行: <td onclick="submitSqlExecute(this)">...<span>${ctx ...
- java编程思想第九章接口
9.1抽象类和抽象方法 为什么要有抽象类? 是希望通过通用接口操作一系列类. 那么抽象类的形式是什么样的呢? 声明类的使用使用abstract关键字,且在该类中应该具有抽象方法. 注:抽象方法被关键字 ...
- linux php相关命令
学习源头:http://www.cnblogs.com/myjavawork/articles/1869205.html php -m 查看php开启的相关模块 php -v 查看php的版本 运行直 ...
- (转)AppCan中调用系统浏览器打开网页
<!DOCTYPE html> <html> <head> <style>body{ background:#fff; font-size:30px;} ...
- top命令 Linux查看CPU和内存使用情况,cpu监控之一
一.top命令 top命令是一个功能十分强大的监控系统的工具,对于系统管理员而言尤其重要.但是,它的缺点是会消耗很多系统资源. 在系统维护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分 ...
- Jenkins构建触发器定时Poll SCM、Build periodically
一.时间设置语法 时间设置由5位组成:* * * * * 第一位:表示分钟,取值0-59. 第二位:表示小时,取值0-23. 第三位:表示日期,取值1-31. 第四位:表示月份,取值1-12. 第五位 ...
- sqlplus 设置显示格式
使用sqlplus查询显示结果,显示很乱,下面有种方法可以让她显示的更好看些.1.设置显示的宽度:设置前可以先查看当前宽度: SQL> show linesize;linesize 100SQL ...
- CentOS6.5安装完没有网络的解决办法
昨天下了个CentOS 6.5 Minimal 版,在VMware 10下安装好了之后,发现上不了网,PING外网也PING不通. 在网上搜了一下,发现Linux安装好了之后,网卡默认是没有启动的,下 ...