著录项信息
专利名称 | 存储过程自适应系统及方法 |
申请号 | CN200810300176.3 | 申请日期 | 2008-01-21 |
法律状态 | 暂无 | 申报国家 | 中国 |
公开/公告日 | 2009-07-29 | 公开/公告号 | CN101493827 |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F17/30 | IPC分类号 | G;0;6;F;1;7;/;3;0查看分类表>
|
申请人 | 鸿富锦精密工业(深圳)有限公司;鸿海精密工业股份有限公司 | 申请人地址 | 北京市东城区东长安街1号东方广场E1座701室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 中国森田企业集团有限公司 | 当前权利人 | 中国森田企业集团有限公司 |
发明人 | 张志勇;杨益 |
代理机构 | 暂无 | 代理人 | 暂无 |
摘要
一种存储过程自适应方法,该方法包括如下步骤:在数据库服务器中建立存储过程规则表,该存储过程规则表中存储有用户所定义的存储过程访问规则;在所述数据库服务器中的数据字典中选择用户所需要的存储过程的信息;将所选择的用户所需要的存储过程的信息保存于所述数据库服务器中的数据链表中;在所述存储过程规则表中选择一个当前所需要执行的存储过程所对应的存储过程访问规则;根据所选择的存储过程访问规则于所述数据链表中获取当前所需要执行的存储过程的信息;及执行所述存储过程并返回执行存储过程的结果。另外,本发明还提供一种存储过程自适应系统。
存储过程自适应系统及方法\n技术领域\n[0001] 本发明涉及一种存储过程自适应系统及方法。\n背景技术\n[0002] 管理信息系统(MIS,Management Information System),是一个由人、计算机及其他外围设备等组成的能进行信息的收集、传递、存贮、加工、维护和使用的系统。目前,企业的计算机网络已成为企业进行技术改造及提高企业管理水平的重要手段。随着我国与世界信息高速公路的接轨,企业通过计算机网络获得信息必将为企业带来巨大的经济效益和社会效益,企业的办公及管理都将朝着高效、快速、无纸化的方向发展。MIS系统通常用于系统决策,例如,可以利用MIS系统找出目前迫切需要解决的问题,并将信息及时反馈给上层管理人员,使他们了解当前工作发展的进展或不足。\n[0003] 然而所有的MIS系统都离不开大型的数据库支持,几乎所有的应用也都是面向数据库交换进行的。通常在系统的实施及验收过程中,客户会提出一些变更请求,变更的请求多数需要修改数据库及数据结构,由于调用存储过程需要对应的程序代码,若改变存储过程,则需要改变相应的调用代码,这无疑会给程序开发人员带来很大的压力及负担,降低了工作效率。\n发明内容\n[0004] 鉴于以上内容,有必要提供一种存储过程自适应系统,包括数据库服务器,该数据库服务器包括:存储过程和数据字典,该数据字典中存储有所有存储过程的信息,该数据库服务器还包括一个存储过程规则表,该存储过程规则表中存储有用户所定义的存储过程访问规则,所述数据库服务器还包括:选择模块,用于选择所述数据字典中用户所需要的存储过程的信息;保存模块,用于将所选择的用户所需要的存储过程的信息保存于数据链表中;\n所述选择模块,还用于在所述存储过程规则表中选择一个当前所需要执行的存储过程所对应的存储过程访问规则;获取模块,用于根据所选择的存储过程访问规则于所述数据链表中获取当前所需要执行的存储过程的信息;及执行模块,用于执行所述存储过程并返回执行存储过程的结果。\n[0005] 此外,还有必要提供一种存储过程自适应方法,该方法包括如下步骤:在数据库服务器中建立存储过程规则表,该存储过程规则表中存储有用户所定义的存储过程访问规则;在所述数据库服务器中的数据字典中选择用户所需要的存储过程的信息;将所选择的用户所需要的存储过程的信息保存于所述数据库服务器中的数据链表中;在所述存储过程规则表中选择一个当前所需要执行的存储过程所对应的存储过程访问规则;根据所选择的存储过程访问规则于所述数据链表中获取当前所需要执行的存储过程的信息;及执行所述存储过程并返回执行存储过程的结果。\n[0006] 相较于现有技术,所述存储过程自适应系统及方法,能够对修改的数据库进行自动适应,改变存储过程时,无需改变调用存储过程的代码,最大限度的减少代码的修改,降低了系统开发项目的风险,提高了工作效率。\n附图说明\n[0007] 图1是本发明存储过程自适应系统较佳实施例的硬件架构图。\n[0008] 图2是图1中数据库服务器3的功能模块图。\n[0009] 图3是本发明存储过程自适应方法较佳实施例的作业流程图。\n[0010] 图4是存储过程规则表示意图。\n具体实施方式\n[0011] 如图1所示,是本发明存储过程自适应系统较佳实施例的硬件架构图。该系统包括客户端计算机1、与该客户端计算机1通过网络2通信的数据库服务器3。其中,网络2可以包括本技术领域内众所周知的任何网络,包括:传输控制协议/网络协议(TCP/IP)网络(例如:内部网络,因特网)、局域网、广域网、光纤信道、令牌环等。所述数据库服务器3包括:数据库300、存储过程400及数据链表500。\n[0012] 所述数据库300包括数据字典301。数据字典301是以数据表和视图为主要存在形式存在的,是关于数据的信息的集合。该数据字典301存放有数据库所有的相关信息,例如:数据库300分配多少空间,当前使用了多少空间,用户的名字,用户及角色被授予的权限及存储过程400的相关信息等,所述存储过程400的相关信息包括:存储过程400的输入参数、输出参数、存储过程400的名称等。\n[0013] 所述存储过程400是由编程人员编写的一段程序,该程序用于数据库300与客户端计算机1的数据交互,对数据库300的每个数据操作都具有相应的存储过程400。例如:\n若客户端计算机1需要存储数据至数据库300中,则执行存储数据的存储过程400;若客户端计算机1需要调用数据库300中的数据,则执行调用数据的存储过程400。所述存储过程\n400还包括一个参数表(图中未示出),该参数表中存储有存储过程400的输入参数及输出参数。所述数据链表500用于存储从数据字典301中获取的用户所需要用的存储过程400的所有信息,所述存储过程400的所有信息是以存储过程400的名称存储于该数据链表500中的。\n[0014] 如图2所示,是图1中数据库服务器3的功能模块图。所述数据库服务器3包括:\n获取模块10、选择模块12、保存模块14及执行模块16。本发明存储过程自适应系统在启动之前,需由编程人员于数据库服务器3中建立存储过程规则表,如图4所示,该存储过程规则表的内容包括:存储过程400的工作类型、存储过程400的名称、存储过程400的索引值序号及存储过程400的返回标记值。所述存储过程400的工作类型记载为工作类型的ID号,该工作类型的ID号由编程人员自行定义,例如本实施例中将所述ID号定义为:ID号为\n1表示工作类型为上料,ID号为2表示工作类型为存储员工编号。所述存储过程400的名称用于根据该名称获取数据链表500中对应该名称的存储过程400的信息。所述存储过程\n400的索引值序号表示存储过程400的输出值在存储过程400的参数表中的序号。所述存储过程400的返回标记值有两种情况:“1”或者“0”,若返回标记值为“1”,表示所述存储过程400有输出值,若不需要输出,则返回标记值为“0”。例如:如图4所示,存储员工编号的工作类型的ID号为2,索引值序号为3,返回标记值为1,表示存储员工编号对应的存储过程\n400有输出值,且该输出值为所述参数表中的第三个参数。\n[0015] 获取模块10用于获取数据库300中的数据字典301。\n[0016] 选择模块12用于选择所述数据字典301中用户所需要的所有存储过程400的信息。\n[0017] 保存模块14用于将所选择的用户所需要的所有存储过程400的信息以存储过程\n400的名称命名保存于数据链表500中。\n[0018] 所述选择模块12还用于在所述存储过程规则表中选择一个当前需要执行的存储过程400所对应的存储过程访问规则,例如:若当前需要存储员工编号,如图4所示,所述选择模块12用于在存储过程规则表中选择存储员工编号所对应的存储过程访问规则:工作类型的ID号为2,索引值序号为3,返回标记值为1。\n[0019] 所述获取模块10还用于根据所述规则表中的规则中的该存储过程400的名称于所述数据链表500中查找该存储过程400名称,从而获取当前所需要执行的存储过程400在数据链表500中的信息,本实施例中获取存储员工编号对应的存储过程400在数据链表\n500中的信息。\n[0020] 执行模块16用于执行当前需要执行的存储过程400,该执行模块16还用于返回执行所述存储过程400的输出结果。若所述存储过程400执行完成后无输出值,则返回输出结果为“ok”,若所述存储过程400执行完成后有输出值,则返回输出结果为该输出值。\n[0021] 如图3所示,是本发明存储过程自适应方法较佳实施例的作业流程图。\n[0022] 步骤S30,建立存储过程规则表,如图4所示,该存储过程规则表的内容包括:存储过程400的工作类型、存储过程400的名称、存储过程400的索引值序号及存储过程400的返回标记值。所述存储过程400的工作类型记载为工作类型的ID号,该工作类型的ID号由编程人员自行定义,例如本实施例中将所述ID号定义为:ID号为1表示工作类型为上料,ID号为2表示工作类型为存储员工编号。所述存储过程400的名称用于根据该名称或取数据链表500对应该名称的存储过程400的信息。所述存储过程400的索引值序号表示存储过程400的输出值在存储过程400的参数表中的序号。所述存储过程400的返回标记值有两种情况:“1”或者“0”,若返回标记值为“1”,表示所述存储过程400有输出值,若不需要输出,则返回标记值为“0”。例如:如图4所示,存储员工编号的工作类型的ID号为2,索引值序号为3,返回标记值为1,表示存储员工编号对应的存储过程400有输出值,且该输出值为所述参数表中的第三个参数。\n[0023] 步骤S32,获取模块10获取数据库300中的数据字典301。\n[0024] 步骤S34,选择模块12于所述数据字典301中选择用户所需要的所有存储过程\n400的信息。\n[0025] 步骤S36,保存模块14将所选择的用户所需要的所有存储过程400的信息以存储过程400的名称命名保存于数据链表500中。\n[0026] 步骤S38,所述选择模块12在所述存储过程规则表中选择一个当前需要执行的存储过程400所对应的存储过程访问规则,例如:若当前需要存储员工编号,如图4所示,所述选择模块12用于在存储过程规则表中选择存储员工编号所对应的存储过程访问规则:工作类型的ID号为2,索引值序号为3,返回标记值为1。\n[0027] 步骤S40,所述获取模块10根据所述选择的存储过程访问规则对应的该存储过程\n400的名称于所述数据链表500中查找该存储过程400名称,从而获取当前所需要执行的存储过程400在数据链表500中的信息,本实施例中获取存储员工编号对应的存储过程400在数据链表500中的信息。\n[0028] 步骤S42,执行模块16执行当前需要执行的存储过程400,本实施例中执行所述存储员工编号对应的存储过程400。\n[0029] 步骤S44,执行模块16返回执行所述存储过程400的输出结果。若所述存储过程\n400执行完成后无输出值,则返回输出结果为“ok”,若所述存储过程400执行完成后有输出值,则返回输出结果为该输出值。\n[0030] 最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。
法律信息
- 2016-04-06
专利权的转移
登记生效日: 2016.03.18
专利权人由鸿富锦精密工业(深圳)有限公司变更为中国森田企业集团有限公司
地址由518109 广东省深圳市宝安区龙华镇油松第十工业区东环二路2号变更为100005 北京市东城区东长安街1号东方广场E1座701室
专利权人由鸿海精密工业股份有限公司变更为空
- 2013-08-21
- 2010-10-27
实质审查的生效
IPC(主分类): G06F 17/30
专利申请号: 200810300176.3
申请日: 2008.01.21
- 2009-07-29
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |