SQLSERVER视图和存储过程在进销存系统开发中的应用

来源 :计算机光盘软件与应用 | 被引量 : 0次 | 上传用户:wxj1208
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:视图和存储过程是SQLSERVER重要的数据库对象。在进销存管理信息系统开发中应用视图和存储过程技术能收到提高所开发系统的安全性、提高执行效率、方便代码管理等效果。笔者就如何在.NET环境中开发通用进销存管理系统,以业绩提成模块为例结合应用视图和存储过程技术提出自己的设想。
  关键词:存储过程;视图;进销存系统;开发;应用
  中图分类号:TP311 文献标识码:A 文章编号:1007-9599 (2013) 01-0004-03
  进销存系统是对企业的进货、销售、库存进行统一管理的应用系统。随着计算机技术不断普及、随着市场竞争越趋激烈,现在中小企业普遍使用进销存系统进行管理。市场上各种进销存系统参差不齐。企业要想在这种大环境中取得竞争的胜利,必须依托信息系统。另外,企业的这些数据量非常大,能对这些数据进行统一管理、统计分析,为提高运作效率、提供决策,提供及大方便。开发一个实用、高效的管理信息系统,为企业带来很大帮助。存储过程在系统设计中应用,能为提高系统的安全性,提高执行效率,方便代码管理带来很好的效果。高效的进销存系统是支撑中小企业实现“零库存”、极大限度降低企业运作成本、追求利益最大化的法宝。中小企业在开发进销存系统软件时,由于开发方便、部署简单、性能优良,通常使用SQLSERVER作为后台数据库管理。开发过程中需要使用SQL语句向后台数据库发送命令,对数据库返回结果进行处理。进销存数据库中的表结构各异,记录规模较大.如何编写高效的程序以实现与数据库进行交互、对数据库进行维护等复杂操作是进销存管理软件开发中的一个难点。现就在基于.NET的开发环境中,以通用进销存系统业绩提成统计模块开发中结合应用视图和存储过程作一些探讨。
  1 视图和存储过程概述
  视图相当于创建的一张虚拟表或存储查询,视图访问的数据不作为独特的对象存储在数据库内。SELECT语句结果集构成视力的内容,在程序开发中可以使用视图实现下列功能:限定用户查询表中的特定行或特定列上;将多个表中的列链接起来,使它们看起来像一个表;聚合信息。使用视图的优点:保护敏感数据;封装复杂查询;满足不同用户对数据的需求;提供一定程度上的独立性。在数据库管理系统中使用CREATEVIEW指令来创建视图。
  存储过程是在数据库系统中,一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。
  使用存储过程明显具有以下优点:允许组件式编程。存储过程在被创建以后可以在程序中被多次调用而不必重新编写该存储过程的SQL语句,而且数据库管理人员可随时对存储过程进行修改。只要过程接口不发生变化,对应用程序源代码并无影响,从而极大地提高了程序的可移植性;更快的执行速度。存储过程是预编译的,在首次运行一个存储过程时查询优化器对其进行分析、优化,并给出最终被存在系统表中的执行计划。而采用第一种方法则需要在每次运行时都要对发送到数据库的所有SQL语句进行编译和优化;降低网络负载。应用程序调用存储过程时,网络中传送的仅是该条调用语句。而采用第一种方法将传送多条SQL语句,从而大大增加了网络流量,在对数据库网络访问量达到一定程度时,可能造成网络堵塞;增强数据库的安全性。系统管理员通过对执行某一存储过程的权限进行限制,能够实现对相应的数据访问权限的限制,避免非授权用户对数据的访问,保证数据的安全。在数据库管理系统中使用create procedure指令来创建存储过程。
  2 以业绩统计为例探讨视图和存储过程在进销存系统开发中的具体应用
  现在中小企业的管理中,为了提高员工的积极性,常用的激励办法是业绩提成。组合查询业绩统计是进销存系统最复杂的逻辑。现以组合条件查询业绩为例,结合视图和存储过程来来实现。例如中小企业为每个客户公司设定一个销售主管和销售助理,并对销售主管和助理设定一个提成比例,每一个员工,既可以是这个客户的主管,也可以是其他客户的助理,根据不同类型的客户,其提成比例都不一致。每完成一笔对该客户的销售,可以分别会对销售主管和助理按提成比例统计业绩。现将实现这功能所需要的数据表、创建视图、存储过程及运行效果表述如下:
  2.1 数据表及关系
  客户资料(数据库表名:tb_client)用途:存放客户相关的数据;
  销售表(数据表名:tb_bill)用途:存放销售单的数据;
  销售明细表(数据表名:tb_bill_product)用途:存放销售单中相关的货品明细数据;
  货品信息(数据库表名:GoodsData)用途:存放货品信息数据;
  用户表(数据库表名:Username)用途:存放系统用户的数据;
  2.2 创建视图
  用CREATEVIEW指令创建视图view_tj_yeji。该视图通过链接多个表显示每个客户每个销售单的每个商品的情况。主要包括客户的信息、客户的销售单情况、销售单包括的商品情况、商品明细信息。
  SQLSERVER数据库端创建视图代码:
  2.3 创建存储过程
  在视图的基础上创建存储过程,用CREATEPROC EDURE指令创建名为P_view_hjyjgw的存储过程,进行业绩提成统计。该存储过程是带参数的,其参数是输入的组合条件,实现生成以员工为基准的统计表,按照输入的复杂条件进行统计。
  组合查询图:
  运行统计效果图:
  点击业绩数据,可以显示该名员工在组合条件查询下的产生该业绩数据所包含的销售单及商品情况。后台是调用之前创建的视图view_tj_yeji。
  ASP.NET调用视图的代码:
  销售业绩明细表效果图:
  以上代码在真实环境中运行通过,相关图片是真实运行情况下的切图。与数据库连接,一些相关函数的定义代码省略。在实际应用中,我们还可以通过带参数的存储过程构建动态SQL语句,实现更复杂的功能,提高程序的通用性和可扩展性。
  3 结语
  在进销存系统开发过程中,将与数据库相关的操作通过视图和存储过程等方式写到数据库组件中,将数据呈现通过数据控件调用视图或存储过程实现,这样做将大大提高系统的开发效率,对于程序维护也相当方便,与数据库相关的修改直接在后台数据改视图和存储过程即可,无须改程序代码,无须重新编译。在进销存系统软件开发过程中综合运用存储过程和视图,会给软件设计带来极大的方便,还可以提高软件的安全性、提高软件的运行效率。当然,SQLSERVER数据库对象除了存储过程和视图以外,还有触发器和索引等等,在以后应用程序开发过程中,综合运用上述组件,往往会带来事半功倍的效果。
  参考文献:
  [1]邓超群,蒋永进.销存一体化管理信息系统分析与设计[J].现代商业:177-178.
  [2]苏琦,解析存储过程孝档案管赣件开发中的应用[J].电脑编程技巧与维护:53-54.
  [3]周峰.SQLSERVER2005基础与实践教程[M].北京:电子工业出版社,2006,7.
  [4]郑阿奇.ASP.NET实用教程[M].北京:电子工业出版社.
其他文献
钟朝露 / 西南民族大学,成都 610225  摘 要:随着社会发展,人们越来越注重精神生活品质的提高,“健康”自然成为越来越重要的话题。当我们的生命健康遭到威胁时,及时的医疗救助成了我们保全生命的关键。据不完全统计每年中国有54.4万患者死于心脏病,而这其中的70%是由于没有得到及时的医疗救助而失去生命的。由此可见急救对于我们的生命是有多么重要,尤其是当我们的生命健康受到威胁的时候,及时的医疗救
期刊
朱良勇/北京无线电测量研究所,北京 100854  摘 要:随着工业信息化建设的需要,网络技术在现代化工业控制系统中应用越来越普遍。生产车间内部设备、指挥调度系统之间也需要互联互通,这使得计算机网络拓扑结构越来越复杂。为确保各个系统网络工作正常,需要划分VLAN隔离广播域,为确保各个系统网络互联互通,网络转发分组数据包需要路由。  关键词:虚拟局域网(VLAN);路由  中图分类号:TP393  
期刊
摘 要:本文从课题研究的相关背景入手,首相详细的阐述了三维模型技术与虚拟现实,然后详细的构建了三维影视动漫等虚拟场景,接着具体的实现了建筑虚拟漫游系统。  关键词:三维;磨损性;虚拟  中图分类号:TP391.9  近年来,学者们对于虚拟现实这一领域的研究越来越深入,并将其应用在了电影、动画等的制作之中。虚拟现实集合了包括图像的处理技术、智能接口技术等多项先进的技术在内的现代高新技术,在学科领域涉
期刊
(长江大学计算机科学学院,湖北荆州 434023)  摘 要:随着企业信息化的不断发展,信息技术在企业管理上的应用越来越广泛。企业建立统一的,能够整合各种信息资源的员工工作台显得越来越重要。本文工作台基于微软SharePoint门户技术特点为基础,探讨了员工工作台总体设计及实现功能。所设计的工作台与其它应用系统灵活接入,实现了以人为本的展现集成、业务集成、数据集成的工作台面,极大的提升了企业信息化
期刊
摘 要:随着我国金融体系的发展与完善,商业银行快速扩张,导致了经营风险的日益增加和业务资源的激烈竞争。利用先进的技术手段,整合已经积累的大量的客户信息和经营数据,为制定经营管理决策提供支持,是提高银行竞争力的重要途径。本文以华兴商业银行模拟业务数据为例,从多个事实角度对其进行数据仓库建模并通过对数据进行多维度分析,说明数据仓库在商业银行中的应用前景。  关键词:商业银行;数据库;数据仓库;模型设计
期刊
摘 要:随着互联网,特别是移动互联网产业的迅速崛起,创新型、应用型高等工程技术人才的需求激增。为适应国家“西部大开发”、“桥头堡”发展战略以及培养云南省走新型工业化道路实施工业强省战略的高等工程人才,加快推进云南省卓越工程师教育培养计划,企业培养阶段的方案显得尤为重要。结合自身实际情况,对计科专业(网络方向)的企业培养阶段进行了深入思考,并针对专业技能和知识,设计了详细的培养方案。  关键词:卓越
期刊
摘 要:耕地作为人类不可替代的自然资源的基础,其分布的空间特性决定着一个国家或地区社会经济的可持续发展。本文在地理信息系统(GIS)技术的支持下,探讨了重庆以及重庆内部的三大经济体一圈、东北翼、东南翼,近十年(2001-2010)耕地重心、经济重心的变化,以及二者之间与各自区域几何中心之间的相互关系。结果表明:(1)近十年来,重庆耕地重心和经济重心与几何中心之间的距离相差较大,不平衡性强。(2)各
期刊
摘 要:随着计算机技术的不断发展,以及三维建模在各个领域的研究与应用,三维建模技术在建模方法、建模对象等方面发生了很大的变化。从最初费时费力的基于几何的手动建模,发展到运用基于图像的建模与绘制等多种方法,对比较复杂的人脸、肢体等进行三维建模。利用三维建模技术精确地描绘现实事物以实现三维物体的真实再现,进而为用户创造一个身临其境、形象逼真的环境。本文主要介绍了三维建模技术的发展、两种建模技术(Sol
期刊
摘 要:《C语言程序设计》是计算机专业一门重要的专业基础课。然而,对于基础较差的高职学生来说,学习难度大,学习兴趣难以培养。 “自主、合作、探究” 的学习方式是课程改革的目标,为了适应课改要求,小组合作学习作为一种新的学习方式应时而生。本文通过分析建立学习小组的优势及合作学习中应注意的事项,体现学习小组在教学中的作用:增强学习信心,培养学习兴趣,在互帮互学中取长补短、共同提高,使学生感受到学习的快
期刊
摘 要:本文以对计算机基础教学状况的调查为基础,对参与式课堂教学方法及其效果进行了研究。参与式教学模式是提高高校课堂教学有效性的重要途径,确立学生的主体地位,注重能力的培养,应重视让学生全程、全方位参与,综合运用多种方式对学生考评。调查表明,参与式课堂教学方法对于活跃课堂气氛、提高教学的针对性与实效性具有非常重要的作用,同时也存在需要改进之处。  关键词:参与式教学;网络自主学习平台;计算机基础;
期刊