数据库开发者常犯的十大错误,你有吗?[1]

数据库开发者常犯的十大错误,你有吗?[1],第1张

数据库开发者常犯的十大错误,你有吗?[1],第2张

虽然软件开发中的热点技术在不断变化,但有些东西却从未改变,其中之一就是开发人员对数据库的使用和设计。

你可能会兴奋地追随时尚创建一个AJAX Web界面,或者使用最近迷人的Windows用户界面,但通过这些各种各样的外观界面,你可能仍然需要从后台数据库中提取或访问所需的数据——就像十多年前人们操作数据库一样。

然而,令人惊讶的是,仍然有许多开发人员在不断重复许多年前就存在的数据库使用和开发的错误。也许太多的开发人员只是来学习如何使用数据库,而不是真正研究它。以下是笔者选取的数据库开发人员在平时开发工作中常见的十个错误,以飨读者和同行。

1.选择了错误的数据库。

不是所有的数据库都可以用来完成您的任务,这意味着在您使用它进行任何开发工作和其他事情之前,您必须选择正确的数据库。比如我们经常会看到一些Access数据库无法处理的大容量数据集,但是对于SQL Server来说,却可以像儿童游戏一样轻松处理。然而,有些人花钱购买SQL Server,因为他们只需要处理几百行数据。这些都是错误的做法。

从广义上讲,当今市场上的数据库可以分为三个层次:桌面和嵌入式数据库——适合处理小型任务;一些大型数据库产品的“Express”版也不错,可以处理几个G的数据;而真正的企业数据库,如SQL Server、Oracle、DB2的数据处理能力是惊人的。你可以毫不犹豫地把你的数据扔给他们。

所以在选择数据库之前,需要对自己的数据进行客观真实的分析,从而选择适合自己开发工作和实际需求的数据库产品。

2.选择了太多数据库。

应用编程接口的出现,如ODBC、JDBC、OLEDB等,极大地促进和推动了数据库的独立性。也就是说,开发者可以这样编写你的应用程序:你可以让你的应用程序支持使用任何数据库进行数据存储。

但是,这种情况是要付出代价的。我看到过一些开发团队专门编写应用程序,把所有的SQL语句转换成一些低级语言,让所有的数据库都能理解和执行,但同时也失去了现有数据库的一些高级功能。

那你为什么要这么做呢?可能是出于这样的考虑:有些客户未来可能想转到Oracle或者DB2或者FoxPro,或者其他数据库。采取以上做法可能是为了现在未雨绸缪。

对于这一点,另一个相反的方法是:当你开始开发一个新产品时,选择一个存储引擎,并基于它开始编写你的应用程序。如果你的产品足够好,人们就会安装你指定的数据库,所以你不必浪费时间和精力去支持一个“假设”的用户需求。

3.了解你的数据。

在使用数据库的过程中,我们会遇到很多需要考虑的问题。比如有的客户号可能是六位数,而不是我们通常认为的七位数;但有些公司企业出于保护个人隐私的考虑,可能不一定要求员工输入身份证号或银行账号,所以这个数据库中的数据类型必须设置为空(NULL)。

也就是说,数据库开发设计不能脱离实际,不能远离实际的业务规则。对于数据库开发人员来说,需要充分了解用户真正需要输入的数据是什么,并根据这些数据合理设计数据字段的大小、类型和规则,等等。否则等待你的将是一次又一次的回头修改。所以你要学会在一开始就对自己需要处理的数据有非常全面深入的了解,尽量考虑各种突发情况。

4.数据库不是像Excel一样人人都用的。

现在有一个误区,尤其是在一些小单位管理人员眼里,总以为任何一个开发人员都知道如何合理的建立一个数据库。

很明显,这个误会把我搞糊涂了。既然你不会假设任何开发人员都知道如何用C#编程或创建Web服务,为什么要假设每个开发人员都是数据库专家呢?

这种假设的最终结果是,太多的数据库是由甚至从未听说过术语规范化的人设计的。许多数据库功能根本没有被正确使用。如果你是这样的开发者,在设计一个数据库之前,你需要加强这方面的训练和学习。高效的数据库设计是你必须知道和掌握的技能,不要指望通过失败的教训学到这一点。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 数据库开发者常犯的十大错误,你有吗?[1]

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情