CN101425060A - 数据库的数据表生成方法 - Google Patents
数据库的数据表生成方法 Download PDFInfo
- Publication number
- CN101425060A CN101425060A CNA200710165929XA CN200710165929A CN101425060A CN 101425060 A CN101425060 A CN 101425060A CN A200710165929X A CNA200710165929X A CN A200710165929XA CN 200710165929 A CN200710165929 A CN 200710165929A CN 101425060 A CN101425060 A CN 101425060A
- Authority
- CN
- China
- Prior art keywords
- data
- database
- tables
- newly
- increased
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种数据库的数据表生成方法。本方法包括以下步骤:首先,建立与数据库的连接;之后,依据建表讯息新增数据表;然后,联集新增的数据表及数据库暨有的数据表,并记录新增的数据表与暨有的数据表的关联,以产生一数据总表;接着,将固定接口套用至数据总表(即以固定接口的字段名称套用数据总表的字段名称),并输出数据总表。所产生的数据总表为数据库内数据表的联集,且纪录与数据表的关联。因此可在不影响数据库数据表结构的前提下,新增一数据表,并产生数据总表供客户端使用,以达自动适应数据库变化的功效。
Description
技术领域
本发明为一种数据表生成方法,且特别是一种在不影响数据库数据表结构前提下新增一数据表,并自动适应数据库的变化而产生数据总表的方法。
背景技术
数据库可储存多笔数据并对这些数据进行管理,目前已普遍运用在例如电子商务或人事管理等系统中。当建置数据库时,首先需确定数据库的结构,包括数据库中数据表的数量、各个数据表的字段,以及数据表中各个字段之间的关联等。数据库数据表之间字段的关联性直接影响到后续数据库开发或使用的稳定性。举例来说,当开发数据库应用系统时,如人事管理系统,需先建置数据库,当数据库建置完成后,数据库内的数据表字段即不再更动。开发过程中,常会发现数据库中数据表的字段设计不合理、或字段之间的关联性存在逻辑性的错误,致使数据库应用系统发生预期外的错误。此时可直接修改数据库的数据表中发生错误的字段,以其修正开发过程的错误。
然而,在数据库应用系统开发完成并交付客户端后,可能因为客户端不定期的新增数据库数据表,且这些新增的数据表存在字段关联性问题,而造成数据库应用系统存取数据错误或影响系统运作的稳定性,甚至导致数据库应用系统的崩溃。目前用以解决此类问题的方式,不外乎重新设计字段的关联性,并改写数据库应用系统中的SQL语句,使数据库应用系统得以适应数据库结构的变化。不过,这类的解决方式相当倚赖定期的人工修改,相当耗费系统维护的时间与金钱成本。
发明内容
鉴于上述新增数据表造成数据库存取错误或应用程序/系统效能低下等问题,本发明的目的在于提出一种数据库的数据表生成方法,用以在不影响数据库中的数据表结构前提下新增一数据表,并产生数据总表供客户端存取运用,以收自动适应数据库变化的功效。
为达上述的目的,数据库的数据表生成方法包括下列步骤:首先,建立与数据库的连接;接着,依据建表讯息新增数据表;然后,联集新增的数据表及数据库暨有的数据表,并记录新增的数据表与暨有的数据表的关联,以产生数据总表;最后,将固定接口套用至数据总表,并输出数据总表供客户端使用。
其中,所述的新增的数据表是依据数据表结构套用建表讯息,而产生的数据表。另外,所述的固定接口包含多个固定名称的参数。实作数据库的数据表生成方法的数据库应用系统,会自动产生相应数据总表与固定接口的绑定关系的SQL语句,例如透过别名SQL函数(alias)套用此固定接口(以绑定数据总表与固定接口的关系)。
依照本发明的较佳实施例所述的数据库的数据表生成方法,新增该数据表包括以下步骤:绑定数据表结构与建表信息的字段内容,并产生相应的数个SQL语句;以及执行这些SQL语句以新增数据表于数据库。
依照本发明的较佳实施例所述的数据库的数据表生成方法,联集新增的数据表包括以下步骤:读取数据库中与新增数据表关联的数据表;以及依序联集(union)读取出的数个数据表及新增的数据表为一张数据总表。
由上所述,本发明藉由联集数据库内的数据表,并记录新增的数据表与暨有数据表的关联,以产生一张数据总表,之后再透过固定接口存取此数据总表。因此本发明可在不影响数据库中数据表的结构前提下新增一数据表,并产生数据总表供客户端使用,以收到自动适应数据库变化的功效。
有关本发明的详细特征与实作,兹配合图示在实施方式中详细说明如下,其内容足以使任何熟悉相关技艺者了解本发明的技术内容并据以实施,且根据本说明书所揭露的内容及图式,任何熟悉相关技艺者可轻易地理解本发明相关的目的及优点。
以下结合附图和具体实施例对本发明进行详细描述,但不作为对本发明的限定。
附图说明
图1为数据库的数据表生成方法流程图;
图2为实作数据库的数据表生成方法的系统架构图;
图3A为数据库中的客户表的示意图;
图3B、图3D为客户的数据表的示意图;
图3C为新增的数据表的示意图;
图3E为数据总表示意图;
图4A、图4B为以固定接口查询数据库的示意图。
【主要组件符号说明】
210 计算机
220 数据库
222、224 数据表
230 屏幕
240 键盘
232、310、410 人机界面
312 数据表结构
314 储存键
320 数据总表
322 数据表关联字段
420 查询结果
具体实施方式
本发明的目的及提出将在下列较佳实施例中详细说明。然而本发明的概念亦可用于其它范围。以下列举的实施例仅用于说明本发明的目的与执行方法,并非用以限制其范围。
“图1”为数据库的数据表生成方法流程图。请参照“图1”,数据库的数据表生成方法包括下列步骤:首先,建立与数据库的连接(步骤S110)。接着,接收客户端输入的建表讯息,以新增数据表(步骤S120)。此建表讯息例如包括数据表的名称、字段、及字段内容,依据此建表信息内容套用到一张数据表结构,即可于数据库新增一张数据表。然后,联集新增的数据表及数据库暨有的数据表,并记录新增的数据表与暨有的数据表的关联,以产生数据总表(步骤S130);最后,将固定接口套用至数据总表,并输出数据总表供客户端使用(步骤S140)。当客户端结束对数据库存取后,前端系统随即断开并释放与后端数据库的连接。
实作数据库的数据表生成方法的架构包括前端的数据库应用系统(以下称为前端系统)以及后端数据库。前端系统利用一个人机接口接收客户端的操作,获取用户建表讯息,并以数据库联结函式建立联机(例如ODBC、JDBC)。本实施例例如执行下列的JDBC数据库联结函式来建立连接:Connection con=DriverManager.getConnection(″jdbc:odbc:wombat″,″login″,″password″);Statement stmt=con.createStatement();ResultSet rs=stmt.executeQuery(″SELECT a,b,c FROM Table1″);
当建立联机后,前端系统即根据建表讯息中的数据表名称及字段讯息,自数据库中寻找相映的数据表结构,并将建表讯息中的数笔字段内容填入数据表结构中,而成为一张数据表,并新增此数据表于数据库。在本实施例中,新增数据表的步骤例如为先绑定数据表结构与建表信息的字段内容,并产生相应的数个SQL语句。之后,再由前端系统去执行前述的SQL语句以新增数据表于数据库。
客户端新增一张数据表后,此时后端数据库内容已发生改变,前端系统旋即取出数据库中与新增的数据表关联的数据表,并对这些数据表进行联集动作,以产生一张关联性最大的数据总表。在本实施例中,前端系统会读取数据库中包含新增数据表的任意字段的数据表,之后再以SQL的联集(union)语句,将新增的数据表及与其相关联的数张数据表,合而为一张数据总表,所述的SQL语句例如为:
Select all from table1
UNION all
Select all from table2
值得一提的是,所述数据总表虽然是以表的型态显示予客户端,然而此数据总表并不会回存到数据库中,也就是说后端数据库并不存在数据总表。换言之,数据总表为临时产生的一张数据表,客户端可藉由人机操作接口看到数据总表,并可存取数据总表。但是当断开与数据库连接后,数据总表则随的消失。在这张数据总表上包括所有数据表的信息,以及所有数据表间的关联字段,藉由此数据总表,得以在不影响数据库数据表结构的前提下,存取数据库,并自动适应数据库变化。另外,前端系统更套用固定接口于数据总表。所谓的固定接口,所指就是多个参数,这些参数的名称是固定不改变的,藉由执行别名函数(SQL语法中的alias函式)将固定接口套用到数据总表,藉以让前端系统不需随着数据库数据表的异动,更改存取数据库的接口(参数)名称。前端系统绑定固定接口及数据总表的字段名称,并自动产生对应绑定关系的SQL语句。举例而言,数据总表存在一个名为”sum(sales)”字段,固定接口对应此字段的参数名称为”total sale s”,则前端系统产生如下列的SQL语句,以”totalsales”取代sum(sales)如下:
SELECT Al.store_name Store,SUM(Al.Sales)″Total Sales″
FROM Store_Information Al
GROUP BY Al.store_name
接着,列举实例说明前述的数据库的数据表生成方法。“图2”为实作数据库的数据表生成方法的系统架构图。请参照“图2”,本实施例的数据库的数据表生成方法是透过计算机210执行,在计算机210内具有一个数据库220,此数据库220建有数个数据表(222、224)。屏幕230显示一个新增数据表的人机接口232,客户端透过键盘240输入建表讯息,以新增数据表于数据库220。例如,欲在客户名称字段新增一个名为test3的一笔数据,则用户仅需在此人机接口232输入客户的识别名称,如test3,并按下人机接口232上的储存键后,即开始进行于数据库220新增数据表的程序。
“图3A”为客户表的示意图。请参照“图3A”,当使用者按下储存键后,即依据当下计算机的时间,于数据库中的客户表末端加入一笔客户数据,其包括客户的ID、流水编号(sortNum)、客户名称、新增客户名称的时间、以及更新客户数据的时间等字段。由此表可发现,新增的客户test3以新增于客户表的第3号,其Id名为customer003。当新增客户test3于客户表后,此时创建该客户test3的数据表,后端系统至数据库抓取客户的数据表如“图3B”所示,此数据表为所有客户的所有产品的信息,其包括例如产品流水编号Pno、该笔产品信息建立日期(Cdt)、该笔产品信息更新日期(Udt)等字段信息。在数据库中可能建置有许多这类的数据表,亦可能以单一个客户的数据表记录所有客户的所有产品信息。在本实施例中,例如以单一个客户的数据表记录所有客户的所有产品信息。
承上,“图3C”为新增数据表的示意图。请参照“图3C”,当客户端欲新增客户数据时,屏幕上会显示新增数据表的人机接口310,客户端可直接于数据表结构312点选字段输入数据,并按下储存键314后,即生成如“图3B”的数据表。之后,再透过联集数据库中客户的数据表(如“图3D”所示)及其它相关的数据表(例如“图3A”所示的客户表),而产生如“图3E”的数据总表示意图。
请继续参照“图3E”,在一些实施例中,数据总表320除了包括数据表关联字段322纪录与数据库中多张数据表的关联性(在本实施例中,例如纪录数据表名称)外,更包括自动产生主键字段(未显示),藉以对数据总表的数据作循序排序,以供前端系统存取。
“图4A”为以固定接口查询数据库的示意图。请参照“图4A”,前端系统产生一个供客户端查询/使用的人机接口410。当用户输入查询条件后,前端系统即使用固定接口存取数据总表,并依据输入的查询条件撷取信息而产生如“图4A”的查询结果420。另外,使用者亦可透过按下重新查询键,进行其它查询。例如,显示所有客户名称及对应的数据库表名称,如“图4B”所示。由此图可知,后端系统藉由此接口返回客户名称test3所对应的数据库表名称(T_BOMPARTS_3)。当按下人机界面410中的结束查询键时,即结束查询,并断开与数据库的联机。
当然,本发明还可有其他多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (9)
1.一种数据库的数据表生成方法,用以在计算机数据库新增数据表,其特征在于,该数据库的数据表生成方法包括以下步骤:
建立与数据库的连接;
依据接收自客户端的一建表讯息新增一数据表;
联集新增的该数据表及该数据库暨有的数据表,并记录新增的该数据表与暨有的该些数据表的关联,以产生一数据总表;
将一固定接口套用至该数据总表,并输出该数据总表供客户端使用。
2.如权利要求1所述的数据库的数据表生成方法,其特征在于,其中每一该些建表讯息包括数据表的名称、字段、及字段的内容。
3.如权利要求1所述的数据库的数据表生成方法,其特征在于,其中新增的该数据表是依据该数据库中已存在的一数据表结构套用该建表讯息所产生的数据表。
4.如权利要求2所述的数据库的数据表生成方法,其特征在于,其中新增该数据表包括以下步骤:
绑定该数据表结构与该建表信息的字段内容,并产生相应的数个SQL语句;
执行该些SQL语句以新增该数据表于数据库。
5.如权利要求1所述的数据库的数据表生成方法,其特征在于,其中与数据库的连接是透过数据库联结函式建立。
6.如权利要求5所述的数据库的数据表生成方法,其特征在于,其中该数据库联结函式是选自于由开放式数据库连接函式(ODBC)及Java数据库连接函式(JDBC)所组成集合的任一。
7.如权利要求1所述的数据库的数据表生成方法,其特征在于,其中联集新增的该数据表的步骤包括:
读取该数据库中,与新增的该数据表关联的该些数据表;
依序联集(union)读取的该些数据表及新增的该数据表为该数据总表。
8.如权利要求1所述的数据库的数据表生成方法,其特征在于,其中该数据总表是以别名SQL函数(alias)套用该固定接口。
9.如权利要求1所述的数据库的数据表生成方法,其特征在于,其中该数据表生成方法更包括绑定该固定接口及该数据总表的数个字段,并自动产生相应该些绑定关系的数个SQL语句。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA200710165929XA CN101425060A (zh) | 2007-11-02 | 2007-11-02 | 数据库的数据表生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA200710165929XA CN101425060A (zh) | 2007-11-02 | 2007-11-02 | 数据库的数据表生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101425060A true CN101425060A (zh) | 2009-05-06 |
Family
ID=40615685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA200710165929XA Pending CN101425060A (zh) | 2007-11-02 | 2007-11-02 | 数据库的数据表生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101425060A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254021A (zh) * | 2011-07-26 | 2011-11-23 | 北京市计算中心 | 基于虚拟机管理系统的数据库构建方法 |
CN102254228A (zh) * | 2010-05-18 | 2011-11-23 | 苏州汉扬精密电子有限公司 | 产品出货管理系统及方法 |
CN104965935A (zh) * | 2015-08-06 | 2015-10-07 | 携程计算机技术(上海)有限公司 | 网络监控日志的更新方法 |
CN105278961A (zh) * | 2015-10-28 | 2016-01-27 | 广州华多网络科技有限公司 | 生成数据库表结构文档的方法及系统 |
CN107220265A (zh) * | 2016-03-22 | 2017-09-29 | 阿里巴巴集团控股有限公司 | 一种数据库语句编译和执行方法及装置 |
CN109726204A (zh) * | 2018-12-24 | 2019-05-07 | 深圳市奋源科技有限公司 | 一种基于自定义数据表的数据资料管理方法及装置 |
CN112131215A (zh) * | 2019-06-25 | 2020-12-25 | 中国移动通信集团重庆有限公司 | 自底向上的数据库信息获取方法及装置 |
-
2007
- 2007-11-02 CN CNA200710165929XA patent/CN101425060A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254228A (zh) * | 2010-05-18 | 2011-11-23 | 苏州汉扬精密电子有限公司 | 产品出货管理系统及方法 |
CN102254021A (zh) * | 2011-07-26 | 2011-11-23 | 北京市计算中心 | 基于虚拟机管理系统的数据库构建方法 |
CN104965935A (zh) * | 2015-08-06 | 2015-10-07 | 携程计算机技术(上海)有限公司 | 网络监控日志的更新方法 |
CN104965935B (zh) * | 2015-08-06 | 2018-10-12 | 上海携程商务有限公司 | 网络监控日志的更新方法 |
CN105278961A (zh) * | 2015-10-28 | 2016-01-27 | 广州华多网络科技有限公司 | 生成数据库表结构文档的方法及系统 |
CN107220265A (zh) * | 2016-03-22 | 2017-09-29 | 阿里巴巴集团控股有限公司 | 一种数据库语句编译和执行方法及装置 |
CN109726204A (zh) * | 2018-12-24 | 2019-05-07 | 深圳市奋源科技有限公司 | 一种基于自定义数据表的数据资料管理方法及装置 |
CN109726204B (zh) * | 2018-12-24 | 2023-01-31 | 深圳市奋源科技有限公司 | 一种基于自定义数据表的数据资料管理方法及装置 |
CN112131215A (zh) * | 2019-06-25 | 2020-12-25 | 中国移动通信集团重庆有限公司 | 自底向上的数据库信息获取方法及装置 |
CN112131215B (zh) * | 2019-06-25 | 2023-09-19 | 中国移动通信集团重庆有限公司 | 自底向上的数据库信息获取方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7970795B2 (en) | Data model development tool | |
US7200806B2 (en) | System and method for generating pre-populated forms | |
CN100568244C (zh) | 一种数据库动态查询的方法和系统 | |
CN101436962B (zh) | 日志管理方法及系统 | |
CN101425060A (zh) | 数据库的数据表生成方法 | |
US8423514B2 (en) | Service provisioning | |
US8195698B2 (en) | Hierarchy manager for master data management | |
CN102012945B (zh) | 一种面向用户的数据库管理系统 | |
US8010905B2 (en) | Open model ingestion for master data management | |
US9384198B2 (en) | Agency management system and content management system integration | |
US8682936B2 (en) | Inherited entity storage model | |
CN101957865A (zh) | 一种异构系统间数据交换与共享技术 | |
CN109559231A (zh) | 一种面向区块链的追溯查询方法 | |
US20030033225A1 (en) | Multi-dimensional accounting engine | |
CA2429232C (en) | Data source independent interface for an electronic bill presentment and payment system | |
KR20050061597A (ko) | 버저닝된 데이터베이스에 대한 리포트를 생성하기 위한시스템 및 방법 | |
CN101706818A (zh) | 报表的动态过滤方法及装置 | |
US20010034679A1 (en) | Platform independent and non-invasive financial report mark-up | |
CN101145164B (zh) | 一种序时簿的查询方法及一种序时簿的查询装置 | |
CN114116717A (zh) | 一种数据库信息查询方法、装置、设备及可读存储介质 | |
CN102402515A (zh) | 通用自定义查询系统及方法 | |
US10846307B1 (en) | System and method for managing interactions with a data lake | |
US20240036890A1 (en) | System and method of a modular framework for configuration and reuse of web components | |
US7617236B2 (en) | Method and system for displaying results of a dynamic search | |
CN114153866A (zh) | 一种基于es的实时数据中心配置系统及其处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090506 |