mac版Navicat如何设置重新打开后保持上次选项卡,在使用Navicat客户端时,我们可以设置重新打开客户端,保持上次打开的选项卡的,这个功能在哪里设置?我们来看一下。......
如何设计自己的数据库
其实这个经验分享并不仅仅针对MySQL,之所以加上这个关键字其实是为了给搜索引擎看的,呵呵。这篇文章的目标是为了拓宽新手的思路,对于老鸟可能没什么帮助了。
文章主要涉及以下方面的内容:数据完整性约束的意义:数据的第一道防线;避免冗余字段:请不要认为这是一种弹性或者灵活性的体现;请尽可能的收集数据:这是一种境界;
为什么建立索引:不仅仅是速度; 事务、触发器与存储过程:这是一扇门;
工具/原料
- 2
- 2
方法/步骤
很多新手创建的数据库非常的简单,一堆字段扔进去就搞定了,反正脚本会搞定一切。但是,你有没有反思过一个问题,写脚本的也是人,是人就会犯错误,犯了错误就可能搞乱数据,而数据是一切应用的基础。因此,我建议你们能够静下来,细心的,花费更多的时间来研究如何更好地设计数据库结构
这是我的第一个建议,每个表必须具有主键,而且最好是使用单独的一个字段作为主键,这样从根源上扼杀了出现两条完全相同的数据的可能性。例如用户信息表中,除了用户编号以外,其登录名称也应该是唯一的,不要指望以后可以在程序中处理这个情况,现在就做,只要把它标记为唯一键,就算程序中忘了判断也不会让错误的数据被存储进来。
请努力使用与数据匹配的类型和适当的长度,虽然你可以把时间保存为varchar类型,但是明显还是datetime类型更好,因为你不可能把2013-02-30之类的日期保存到datetime类型的字段中。字段的长度也是需要考虑的,过长虽然比过短带来的麻烦小很多,但是浪费了很多空间。
2
尽量为字段设置默认值,例如字段is_read用来表示用户是否已经阅读过这条留言,1表示已读,请为它设一个默认值0来代表未读,而不是在日后的查询语句中通过is_read > 1或者is_read = IS NULL OR is_read = 0来判断。
你必须理解和开始使用外键,并且明白外键约束的用法,这是维护数据完整性很重要的一环。建立外键的同时你会对程序的业务逻辑有更清晰的认识。正确的使用它防止误删具有依存关系的数据,同时通过级联删除保证在删除的时候不留下任何垃圾。
千万不要认为冗余字段能够使数据表更有弹性、更灵活。首先来说冗余的字段必然都是允许为NULL的,因为没有适合的代码为这些字段赋值(如果有的话那就不是冗余字段了,对吗)。这只会增加数据表的体积。事实上修改表结构仅需几分钟,真正的麻烦还是来自于为新字段添加相应的业务逻辑。
注意事项
- 2
- 2
以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!
相关文章
- 详细阅读
-
SQL Server 2005数据库恢复图文教程详细阅读
SQL Server 2005数据库恢复图文教程,相信很多的站长网站的时候需要用到SQLServer2005数据库,但是碰到一些问题没有办法恢复,本人专业学习的.et。平时也经常用到,希望能给大家带来......
2023-03-17 438 数据库
-
如何安装SQL Server 2008数据库(带完整图解)详细阅读
如何安装SQL Server 2008数据库(带完整图解),在电脑上安装SQLServer2008软件时,经常会遇到各种各样的问题,如何成功的安装SQLServer2008呢?提供完整过程和图片详解。......
2023-03-17 455 数据库