仓酷云

标题: ASP教程之数据库计划四五范式 [打印本页]

作者: 分手快乐    时间: 2015-1-16 23:09
标题: ASP教程之数据库计划四五范式
对用户来说可预见费用、节约费用,可以做到花少钱办大事。由于省去了购买软件和硬件等的前期费用,用户可以租用较高级的应用软件。ASP的收费是根据软件的类型、客制化程度、用户数量、服务期限来定的,对客户来说这笔费用是可以预见的。方便于客户应用软件的升级。计划|数据|数据库|数据库计划在界说第四个正轨化的情势前,我想起首提一下三种基础的数据干系:一对一,一对多和多对多。我们转头看一下经由第一个正轨化的users表。如果我们将url的字段放在一个自力的表中,每次在users表中拔出一个纪录,我们就会在urls表中拔出一行。我们将失掉一个一对一的干系:用户表中的每行,都将在urls表中找到响应的一行。关于我们的使用来讲,这既不有用也不尺度。

然后看看第二个正轨化的例子。关于每一个用户纪录,我们的表格同意有多个urls的纪录与之联系关系。这是一个一对多的干系,这是一个很罕见的干系。

关于多对多的干系来讲,就有点庞大了。在我们的第三个正轨化情势的例子中,我们的一个用户与良多的url有关,而我们想将该布局变成同意多个用户与多个的urls有关,如许我们就能够失掉一个多对多的布局。在会商前,我们先看看表格布局会有些甚么变更
users

userIdnamerelCompId
1Joe1
2Jill2

companies

compIdcompanycompany_address
1ABC1WorkLane
2XYZ1JobStreet

urls

urlIdurl
1abc.com
2xyz.com

url_relations
relationIdrelatedUrlIdrelatedUserId
111
212
321
422

为了进一步减低数据的冗余,我们使用第四级正轨化情势。我们创立了一个颇奇异的url_relations表,内里的字段均为主键大概foreignkey。经由过程这个表,我们就能够打消urls表中的反复项目。以下是第四个正轨化情势的详细请求:

第四个正轨化情势

1.在一个多对多的干系中,自力的实体不克不及寄存在统一个表格中
因为它仅使用于多对多的干系,因而年夜多半的开辟者能够疏忽这条划定。不外在某些情形下,它长短常有用的,这个例子就是如许,我们经由过程将不异的实体分别出来,而且将干系移到它们本人的表格中,从而改善了urls表格。

为了令你更简单分明,我们举个详细的例子,以下将用一个SQL语句选择出一切属于joe的urls:
SELECTname,url
FROMusers,urls,url_relations
Whereurl_relations.relatedUserId=1ANDusers.userId=1ANDurls.urlId=url_relations.relatedUrlId

假如我们想要遍历每一个人的团体信息和url信息,我们能够如许做:
SELECTname,url
FROMusers,urls,url_relations
Whereusers.userId=url_relations.relatedUserIdANDurls.urlId=url_relations.relatedUrlId


第五级正轨化情势

另有一级正轨化的情势,它其实不罕见,有点深邃,而且在年夜部分的情形下都是不用要的。它的准绳是:
1.本来的表格必需能够经由过程由它分别进来的表格从头构建
利用这个划定的优点是,你能够确保不会在分别的表格中引进过剩的列,一切你创立的表格布局都与它们的实践必要一样年夜。使用这条划定是一个好习气,不外除非你要处置一个十分年夜型的数据,不然你将不必要用到它。

但愿这篇文章对你有效,而且能够匡助你在一切的项目中使用这些正轨化的划定。你大概想晓得这些办法是从哪来的,我能够告知你,后面三个正轨化的划定是1972年,Dr.E.F.Codd在他的论文“进一步正轨化数据库的干系模子中”提出的,其他的划定是经由厥后的汇合实际和干系数学家实际化的。

批评:正所谓物级必反,将表格分得细致偶然其实不好,由于如许必要将各表举行各类的联系关系,这会令查询时变得庞大,并且效力也大概下降,这些正轨化的划定能够参考,在实践使用时,要依据项目标巨细,需要时能够举行一些测试,以计划出更公道的表格布局。</p>缺乏可以共同遵循的行业标准,ASP还处在发展初期,大家对它的理解不同,如产品和服务标准,收费标准等,不利于行业的健康发展。
作者: 山那边是海    时间: 2015-1-20 07:41
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
作者: 深爱那片海    时间: 2015-1-21 20:25
不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍
作者: 愤怒的大鸟    时间: 2015-1-25 17:30
用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
作者: 第二个灵魂    时间: 2015-1-27 11:57
运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。
作者: 爱飞    时间: 2015-1-27 17:29
哪些内置对象是可以跳过的,或者哪些属性和方法是用不到的?
作者: 小女巫    时间: 2015-2-5 08:53
交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
作者: 飘飘悠悠    时间: 2015-2-11 08:17
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
作者: 乐观    时间: 2015-3-2 01:33
接下来就不能纸上谈兵了,最好的方法其实是实践。实践,只能算是让你掌握语言特性用的。而提倡做实际的Project也不是太好,因为你还没有熟练的能力去综合各种技术,这样只能使你自己越来越迷糊。
作者: 柔情似水    时间: 2015-3-11 01:36
另外因为asp需要使用组件,所以了解一点组件的知识(ADODB也是组件)
作者: 活着的死人    时间: 2015-3-17 18:09
代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
作者: 莫相离    时间: 2015-3-24 18:18
如何学好ASP,以前也有人问过,把回答给你转过来看看能否对你有帮助:




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2