当前位置:七道奇文章资讯数据防范MySQL防范
日期:2011-05-02 15:44:00  来源:本站整理

MySQL数据库技术(02)[MySQL防范]

赞助商链接



  本文“MySQL数据库技术(02)[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

? 本节介绍一个样例数据库,这个数据库在本书各个部份都大概用到.在学习将M y S Q L 投入工作时,这个数据库为您供应了参考的例子.我们主要早年面描写过的两种情形来给出例子:
? ? ■ 机构的秘书筹划.我们需求一些比"机构"更为明确的信息,所以目前就来构造一个,它具有这样一些特点:它由为了研究美国历史这个共同目的而堆积在一同的一群人构成(一时找不到更好的名称,就暂且称为美国历史同盟).在交会费的底子上按期更新
各会员的资格.会费构成了此同盟的活动经费,如出版报纸"美国编年历".此同盟也有一个小Web 站点,但开辟出的功效不多.迄今这个站点只限于供应一些基本的信息,如本集体的性质,负责人是谁,什么样的人可以参与等.
? ? ■ 学分保持筹划.在学分时段中,需求管理被测试者、记录得分并赋予得分等级.然后肯定最后的得分等级,将其与出勤率一道交给学校办公室.目前让我们按照以下两个要求来进一步考虑这些情形:
? ? ■ 必须肯定但愿从数据库中得到什么信息,即,但愿到达什么目的.
? ? ■ 必须筹划好要向数据库输入什么,行将要保存什么数据.大概,在考虑向数据库输入什么数据从前,逆向考虑一下需求从数据库输出什么数据.在可以对数据举行检索前,必须将数据送入数据库.但是,利用数据库的办法是受您的目标驱动的,这些办法与但愿从数据库取出何种信息的关系较之与向数据库输入何种信息的关系更为精密.除非打算今后利用这些信息,不然必定不会浪费时间和精神将它们输入数据库.
? ? 1.2.1 美国历史同盟这个筹划的早期情况是您作为同盟的秘书,操纵字处理文档保护会员清单.这样就生成一个打印的姓名地址录来说还是可以对付的,但是在操纵这些信息做别的事时就会遭到限制.假定您打算做下列工作:
? ? ■ 但愿可以操纵该姓名地址录产生差别格局的输出,并且只给出呼利用处所需的信息.目标之一是生成每年的打印姓名地址录,这是该同盟过去就需求的,您打算持续打印.除此之外,可以假想将姓名地址录中的信息派一些别的用处,如在同盟的年度宴会上
所供应的节目单中给出一个当前的会员清单.这个利用触及差别的信息调集.打印的姓名地址录中利用了每个会员条目的全部内容.而关于宴会节目单,只需求取出会员名字便可(假如采取字处理器要做到这一点有时是不太简单的).
? ? ■ 但愿搜索姓名地址录查找其条目满意某些条件的会员.比方,但愿知道哪些会员不久就需求更新其会员资格.别的触及搜索的利用是由于需求保护每个会员的关键字列表而产生的.这些关键字描写了每个会员分外感爱好的美国历史的某个方面(如内战、经济萧条、公民权利或托马斯·杰佛逊的生活等).会员们有时会向您要一份与他们自己有近似爱好的会员的清单,您一定乐于满意他们的这种要求.
? ? ■ 但愿让姓名地址名录在同盟的Web 站点上联机利用.这对会员和您都是很有好处的.假如您可以将姓名地址录用某种符合的自动历程转换为Web 页,则这个姓名地址录的联机版便可以一种比打印版更及时的方法保持最新信息.并且假如能使这个联机姓名地址录可供搜索,那么会员就可以够自己便利地查找信息了.比方,某个会员但愿知道其他对内战感爱好的会员,他便可以自己将这些会员找出而不用请您帮他查找,而您也不用花时间去做这件事了.我们清楚地知道,数据库并非世界上最令人冲动的东西,因此,我们也不打算狂热地
声称,利用数据库可以增长创造性的思维.但是,当您终止将信息视为某种必须与之搏斗的东西(在用字处理文档时确切是这样的),并开始将其想像为某种可以相对简单地操作的事物(正如但愿用MySQL 所做到的那样)时,您提出某种利用或表示信息的新办法的本领将会得到某种程度的约束,比方下面这些例子就是一些新办法:
? ? ■ 假如数据库中的信息可以以联机姓名地址录的情势移到Web 站点中,那么您大概会让信息以其他的方法流动.比方,假如会员可以联机编辑自己的条目,对数据库举行更新,那么您就没必要自己做全部的编辑工作了,这样有助于使姓名地址录中的信息更为精确.
? ? ■ 假如您在数据库中存储Email 地址,那么可以操纵它们来发送Email 给那些相当长的一段时间没有更新自己的条目的会员.发出的消息可以向这些会员显示他们的条目内容,请他们查看,然后指导怎样操纵Web 站点供应的实用工具做所需的改正.
? ? ■ 数据库不但以关联到会员表的方法帮忙使Web 站点更为有效.比方说,同盟出版了一份报纸"美国编年史",每一期中都有一个给小孩子的版面,内含历史试题.近来有几期主要集合在美国总统的列传上.同盟的Web 站点也可以包含给孩子的版面,这样使试题联机.通过安排从数据库中取出的试题并让Web 服务器对随机给出的问题举行查询,大概乃至可以使这个版面成为交互式的.
? ? 至此,您大概已经想起了许大都据库的用处,这使您有点不能自控了.在回到实际之前,您开始问一些特别的问题:
? ? ■ 这是不是有点野心勃勃了?在预备时是不是要做大量的工作?当然,假如只是想而不去做,则任何事情都很简单,我并不伪称上述全部事情实现起来都是微不足道的.但是,在本书完毕时,我们所描写的这些事都实现了.只需记着一件事,没必要一次做完好部的事.我们将对工作举行分化,每次只做一部份.
? ? ■ MySQL 可以完成全部这些事吗?不,它不可以.比方,MySQL 没有直接的Web 本领.固然由MySQL 自身不能完成我们所谈论的每样事情,但是可以得到与MySQL 一同工作的工具,从而完善和扩大了MySQL 的本领.我们将用Perl 脚本语言和D B I(数据库接口)Perl 模块来编写拜候MySQL 数据库的脚本.Perl 具有极其超卓的文本处理本领,它答应以一种高度机动的方法处理查询后果以产生各种格局的输出.比方,我们可以用Perl 来生成多信息文本格局( RT F)的姓名地址录,这是一种可被全部字处理器读取的格局.我们也可以利用另一种脚本语言P H P.PHP 分外合适于编写Web 利用,并且它与数据库一同工作.这使得能从Web 页运行MySQL 查询并生成包含数据库查询后果的新页.PHP 与A p a c h e(世界上最风行的Web 服务器)一同工作得很好,这使得完成诸如给出一个搜索窗口并显示搜索后果之类的事情很简单.MySQL 与这些工具集成得很好,并向您供应了以自己的方法组合它们的机动性,可以举行挑选以实现您的假想.不用受限于那些大举推销的所谓"集成"功效而实际工作起来也只是彼此之间的固定组合.
? ? ■ 最后,有一个大问题,那就是全部这些东西要花多少钱?首先,同盟的预算是有限的.答复是,大约什么钱也不用花,这大概会令您吃惊.假如您熟习普通的数据库系统,就会知道,它们普通相当高贵.但是, MySQL 普通是免费的.在某些环境下,确切不
需求答应证,并且假如用户数目不限也只需花$ 2 0 0.(关于答应证的普通介绍请参阅前言,特定的细节可参阅MySQL 参考指南.)我们将利用的其他工具( P e r l、D B I、P H P、A p a c h e)也是免费的,因此,全部东西都考虑到了,可以相当便宜地构成一个有效的系统.开辟这个数据库的操作系统的挑选取决于您.我们介绍的全部软件都可运行在Unix 下,此中大大都可以运行在Windows 下.作者举荐在UNIX 下运行MySQL 和其他工具.它们全都是发源于UNIX 下,然后才转到Wi n d o w s的.这表示它们的Windows 版本成熟期较短,还没有经过完好的测试和利用.
? ? 目前,让我们来考虑一下利用样例数据库的其他情形.
? ? 1.2.2 学分保存筹划
? ? 初步的设法是,作为一个老师,有保存学分的职责.老师但愿将学分处理从学分簿上的手工操作转到MySQL 上用电子表示.在此情形下,想从数据库得到的是含在学分簿中的东西:
? ? ■ 关于每次查验或测试,要记录学分.对测试,将学分排序,以便能肯定每个字符( A、B、C、D 和F)所代表等级的得分范围.
? ? ■ 在学分时段完毕时,计算每个学生的总得分,然后排序总的得分并按照它们肯定得分等级.总的得分大概触及权重计算,因为大约会但愿使测试的得分比查验和得分权重更大.
? ? ■ 在每个学分时段完毕时,供应出勤信息给学校办公室.目的是避免手工排序和汇总学分及出勤率记录.换句话说,但愿MySQL 在学分时段完毕时对学分排序并完成每个学生的总分和旷课数的计算.为了到达这个目的,需求班级中的学生名册、每次查验和测试的分数以及学生旷课的日期.
? ? 1.2.3 样例数据库怎样才能满意需求
? ? 假如您对历史同盟或学分保存不太感爱好,大概会奇特为什么必须做这些例子呢?答案是这些样例筹划本身并非目的,只是用它们阐明操纵MySQL 及其相关的工具能做什么事.加上一点想像,您将会看到样例数据库的查询怎样利用到所但愿办理的问题上.假定您在前面提到的牙科诊所上班,将会在本书中看到很多牙科方面的查询.比方,肯定历史同盟的哪些会员需求当即更新他们的会员资格,这是一件近似于肯定哪些病人近来没有来看牙医的事情.二者都是基于日期的查询,因此,一但学会了编写会员更新的查询,便可以将该技术用来编写更为感爱好的耽搁的预约病人查询.
  以上是“MySQL数据库技术(02)[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • Windows 搭配 IIS7 PHP MySQL 环境
  • mysql Out of memory (Needed 16777224 bytes)的错误办理
  • mysql提醒[Warning] Invalid (old?) table or database name问题的办理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • MySQL Order By语法介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • mysql数据库插入速度和读取速度的调整记录
  • MySQL Order By索引优化办法
  • MySQL Order By用法分享
  • mysql #1062 –Duplicate entry ''1'' for key ''PRIMARY''
  • MySQL Order By Rand()效率解析
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .