This Domain(Admin5.com) is for Sale:

My SQL数据库实用技术(28)

时间:2007-12-23  来源:不详  作者:迈克DB

这些语言的不同还在于它们的“安全性”。C API 提供对服务器最低级别的接口,而且强制的原则最少。从这种意义上说,它提供最低级的安全性网络。假如您超出正常顺序执行API 函数,则可能获得一个“超出同步”的错误,或使程序崩溃。Perl 和PHP 都提供了很好的保护。假如您没有以适当的顺序进行,则脚本失败,但是解释程序并不崩溃。在C 程序中,出现崩溃错误的另一个非常可能的来源是动态分配内存和与它们相关的指针的使用。Perl 和PHP 为您处理内存治理,所以您的脚本很少可能因为内存治理的错误而瘫痪。
开发时间受语言可用的外部支持的影响。C 可用的外部支持是将MySQL C API 函数封装为更轻易使用的实例的包装库的形式。这些库对于C 和C 都可用。Perl 无疑具有最大数量的附加软件,都是Perl 模块的形式(与在Apache 模块中具有的概念类似)。甚至有一个基础结构被设计来轻易地定位并获取这些模块(即综合Perl 归档
网络Comprehensive Perl Archive Network, CPA N)。使用Perl 模块,不用编写代码就可以获取对所有类型的函数的访问。想要编写从数据库中生成报告的脚本,然后作为一个附件发送给某人吗?只要获取MIME 模块中的一个,就立即具有附件生成的能力。
织梦好,好织梦

PHP 没有同样程度的外部支持(这并不令人惊异,因为它是较新的语言)。也许所知道的最佳的附加软件是P H P基本库( PHP Base Library,PHP LIB)。根据名称和口令机制的一些排序,假设您正在编写需要限定只有经授权的用户才可以对某个Web 页面访问的Web 应用程序。可以用任意语言编写对它的支持程序,但是假如使用P H P L I B,则不必花费时间重新做这件事情。P H P L I B提供确认并且答应通过会话跟踪经授权的用户(从作为单个逻辑访问部分的给定客户机中连续页面的命中)。还可以分配给用户许可权,这答应您进行像定义具有更多权限的治理用户的工作。
5.2.4 可移植性
可移植性的问题与为访问MySQL 引擎所编写的程序怎样才能轻易地修改为使用不同引擎的程序有关。您可能不担心这个事情。然而,除非可以预知未来,否则,说“除了MySQL以外,我永远都不会将这个程序用在任何其他的数据库上”可能有些冒险:假设您找到另一
份工作,并想使用自己的旧程序,但您的新老板使用不同的数据库系统呢?假如可移植性是需要优先考虑的事情,则应该考虑在API 之间的区别: 织梦内容管理系统
■ DBI API的可移植性最好,因为它独立于数据库是DBI 设计的一个明确目标。
PHP 的可移植性稍差,因为它不提供对DBI 提供的各种数据库引擎的同样类型的统一接口。对每个支持数据库的PHP 函数的调用类似于在相应的基础C API 中的那些。稍有一些不同,但很少,需要更改您调用的数据库相关函数的名称。还有可能要修改一点应用程序的逻辑,因为不同数据库的借口并不都是以同样的方式工作的。
■ C API 提供的数据库之间的可移植性最差。因为它生来就是为MySQL 设计的。当需要在同一个应用程序中访问多个数据库系统时,独立于数据库的可移植性非凡重要。这可能包括像将数据从一个RDBMS 移动到另一个RDBMS 中的简单任务,或更复杂的任务,如基于从许多数据库系统中得到的信息生成报告。

看完这篇,您有何感觉呢?

文章评论

共有位Admini5网友发表了评论 查看完整内容

24小时热门信息