您的位置:首页 > 编程语言 > VB

VB.net版机房收费系统——存储过程和视图的本质挖掘

2016-03-18 20:14 417 查看

简介

存储过程

  存储过程是存放在服务器上的预先编译好的SQL语句,在服务器端运行,可以视为用户为了完成某个特定的功能而编写的一个功能模块,用户或其他用户可以在自己其他的存储过程中引用该存储过程,从而实现了代码的重用性,加快应用的开发速度、提高开发的质量和效率。

  自考数据库原理的时候,里边涉及到了存储过程的知识,那时对它的理解就是“牵一发而动全身”,颇有种“一劳永逸”之感。机房重构中用到了存储过程,将自己原本抽象的理解又给具体化了~

视图

  视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据。但是,视图并不在数据库中以存储的数据值集形式存在。行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。对其中所引用的基础表来说,视图的作用类似于筛选。定义视图的筛选可以来自当前或其它数据库的一个或多个表,或者其它视图。

  视图可以使应用程序和数据库表在一定程度上独立。如果没有视图,应用一定是建立在表上的。有了视图之后,程序可以建立在视图之上,从而程序与数据库表被视图分割开来。

对比

  对于数据库学习,我们最初的认识只有四个字:增删改查,于存储过程和视图而言,二者将这四个功能进行了划分,存储过程负责“增删改”,视图负责“查”

  某些功能的实现,需要用到视图,比如上机操作,我的上机思路是这样的:

  (1)判断卡号是否存在;

  (2)若是存在,是否处于使用状态(PS:由于数据库设计得不太合理,将一些信息都放在了注册表里边)

  (3)卡号是否正在上机;

  (4)卡号余额是否满足最低余额标准

  (5)进行以上操作后,将上机记录更新到T_LineRecord_Info表

  T_Card_Info表内容如下:



  视图设计如下:



  视图编辑后显示的内容:



  用视图的时候,有一种这样的体会:视图的本质也许是一种组合查询,用视图的原因就是不同功能对数据的要求是不一样的,若是针对每一个功能去建立数据表的话,会产生数据库设计上的冗余,故视图存在的目的就是一次性将用到的零件备齐,让这个虚拟表来适应不同的需求,在使用的时候根据去组合零件。

总结

  对比学习很高效,存在即是合理,用质疑的眼光其看待知识存在的意义和优势,就能看到本质。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息