CN112749222B - 一种支持动态参数的关系型数据库查询方法和装置 - Google Patents
一种支持动态参数的关系型数据库查询方法和装置 Download PDFInfo
- Publication number
- CN112749222B CN112749222B CN202110065021.1A CN202110065021A CN112749222B CN 112749222 B CN112749222 B CN 112749222B CN 202110065021 A CN202110065021 A CN 202110065021A CN 112749222 B CN112749222 B CN 112749222B
- Authority
- CN
- China
- Prior art keywords
- query
- dynamic
- data
- database
- parameters
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 14
- 238000012545 processing Methods 0.000 claims abstract description 11
- 238000011144 upstream manufacturing Methods 0.000 claims description 10
- 230000005856 abnormality Effects 0.000 claims 1
- 238000012800 visualization Methods 0.000 abstract description 4
- 238000004519 manufacturing process Methods 0.000 abstract description 3
- 230000000007 visual effect Effects 0.000 abstract 1
- 241001522296 Erithacus rubecula Species 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种支持动态参数的关系型数据库查询方法和装置,包括对新增的数据源进行注册,配置对应的相关信息;进行动态查询传入用户想要的动态参数;程序将配置好的数据源参数与查询语句参数进行结果查询;记录查询时间并将结果落入数据库;用户查询数据会保存到一个固定数据地址供可视化预览。本发明通过对动态参数对配置查询条件进行动态目标数据库查询,将服务功能模块化、参数化以及流程可视化,进而达到在工作和生产过程中使用该功能,能够极大的提升工作效率,且整体流程可视化、标准化以及易于版本管理,降低了用户使用的门槛和处理数据的复杂程度,提供了在任何环境和任何数据库下都能完成动态的数据查询。
Description
技术领域
本发明涉及计算机技术领域,具体来说,涉及一种支持动态参数的关系型数据库查询方法和装置。
背景技术
现有技术中,传统数据库无法做到动态查询,查询条件较为固定,查询数据库往往需要明确指定所有参数,指定正确的数据源,确定查询命令才能够进行查询,这在某些特殊条件下或多数据源条件下会带来一些额外的工作量,做出各种情况的适配,从而降低了工作效率。
目前市面上没有太过于明确的解决方案,基本都需要在代码中进行处理,且依赖于已知的数据条件,无法做到智能以及灵活,且缺少对大型数据平台的支持。
发明内容
针对相关技术中的上述技术问题,本发明提出一种支持动态参数的关系型数据库查询方法和装置,能够克服现有技术方法的上述不足。
为实现上述技术目的,本发明的技术方案是这样实现的:
一种支持动态参数的关系型数据库查询方法,包括:用户在数据源动态查询服务中按照不同的数据源做针对性开发,集成操作对应数据源的能力;动态查询服务集成到大数据处理平台,通过注册模块的方式来提供动态查询的功能;以不同种类的数据源作为不同的api接口,在数据处理平台注册成不同的模块,配置不同的参数;进行使用动态查询,用户在动态查询模块上游按照不同的业务逻辑生成不同的动态参数,并将动态参数传递给下游的动态数据查询模块;上游参数生成成功后会覆盖动态查询模块的同名参数,程序会使用配置好的数据源参数与查询语句参数在当前数据源进行结果查询;查询时会记录用户的查询结果成功或者失败,并记录用户的查询参数,数据返回结果,用户可在执行完成后进行界面可视化的查看,确认本次查询结果;查询任务结束后,可通过在数据平台上进行确认最终的查询结果是否正确。
根据本发明的另一方面,提供了一种支持动态参数的关系型数据库查询装置,包括注册模块、动态查询模块、动态数据查询模块和动态配置模块,其中,注册模块,对新增的数据源进行注册,并配置相关对应信息;动态查询模块,根据不同的业务逻辑生成不同的动态参数,查询时记录用户查询结果、参数和数据返回结果;动态数据查询模块,覆盖传递过来的动态参数的同名参数。动态配置模块,配置动态数据源和动态查询条件,对目标数据库和数据源新型查询。
本发明的有益效果为:通过对动态参数对配置查询条件进行动态目标数据库查询,将服务功能模块化、参数化以及流程可视化,且服务能够按照不同的数据源进行不同的模块注册,进而达到在工作和生产过程中使用该功能,能够极大的提升工作效率,减少重复工作项,且整体流程可视化、标准化以及易于版本管理,随时能够进行升级更新,不断增加多种数据源,多种数据类型,降低了用户使用的门槛和处理数据的复杂程度,提供了在任何环境和任何数据库下完成动态的数据查询。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例所述的支持动态参数的关系型数据库查询的方法的查询语句条件中动态参数为上游传入的name列示意图。
图2是根据本发明实施例所述的支持动态参数的关系型数据库查询的方法的上游传入下游两步骤示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
根据本发明实施例所述的一种支持动态参数的关系型数据库查询的方法,包括:以不同种类的数据源作为不同的api接口,在数据处理平台注册成不同的模块,配置不同的参数;
使用动态查询时,用户在动态数据查询模块上游按照不同的业务逻辑生成不同的动态参数,并将动态参数传递给下游;
动态数据查询模块按照上游传递过来的参数对相应模块参数进行覆盖;
查询时会记录用户的查询结果成功或失败,并记录用户的查询参数,数据返回结果,用户可在执行完成后进行界面可视化的查看,确认本次查询结果;
动态查询提供了一个专门用于开发和集成各种数据源的服务,服务具备独立性,可控性,容灾性,健壮性;
根据本发明的另一方面,还提供了一种支持动态参数的关系型数据库查询的方法,包括:注册模块,对新增的数据源进行注册,并配置对应的接口与模块名称、模块参数、定义输入输出、使用方式等信息;动态数据查询模块,在上游需要生成动态参数,并传递给动态数据查询模块,根据传递过来的动态参数覆盖此模块的同名参数,程序会使用配置好的数据源参数与查询语句参数在当前数据源进行结果查询。
为了方便理解本发明的上述技术方案,以下通过具体使用方式上对本发明的上述技术方案进行详细说明。
用户在数据源动态查询服务中按照不同的数据源做针对性开发,集成操作对应数据源的能力。
在数据平台上对新增的数据源进行注册,配置对应的接口与模块名称、模块参数、定义输入输出、使用方式等信息。
例如,模块名称:MySQL动态传参查询;版本号:1.0.0;模块对应接口:http://......;页面层级路径:Api模块/数据源/MySQL;familyid:mysql_dynamic_parameter_read;模块说明:通过sql语句和传入的数据源信息以及上游的参数结果获取查询结果并写入。参考表1。
表1模块说明
*参数名称 | *参数值类型 | 参数枚举值 | 默认值 | *Displayname | *Help Text |
host | String | @@mysqlHost@@ | Host | ||
port | String | @@mysqlPost@@ | Port | ||
user | String | @@mysqlUser@@ | User | ||
Password | String | @@mysqlPassword@@ | Password | ||
Database | String | @@mysqlDatabase@@ | Database | ||
Sql | String | Sql | |||
tableName | String | tableName |
动态查询服务集成到大数据处理平台,通过注册模块的方式来提供动态查询的功能。
以不同种类的数据源作为不同的api接口,在数据处理平台注册成不同的模块,配置不同的参数。
如图1所示,在使用动态查询时,用户在动态查询模块上游按照不同的业务逻辑生成不同的动态参数,并将动态参数传递给下游的动态数据查询模块。
图中下游查询模块MySQL动态传参查询语句为:select name, ” ” as b fromtest_table where name = ‘&&name&&’。
动态数据查询模块按照上游传递过来的参数对相应模块参数进行覆盖。
用户在数据处理平台上点击任务执行,即可提交任务,进行任务的创建和运行。
查询时会记录用户的查询结果成功或失败,并记录用户的查询参数,数据返回结果,用户可在执行完成后进行界面可视化的查看,确认本次查询结果。
动态查询提供了不同参数化的动态配置,可根据不同的参数进行动态调整且支持任何参数的动态查询。
动态数据源配置:用户自定义数据库连接信息,可按照不同的需求去配置不同的连接数据源,动态调整连接的数据库IP、数据库端口、数据库用户名、数据库密码等信息,服务会按照对应的配置信息对目标数据库进行条件查询。
动态查询条件配置:用户自定义查询语句,按照当前数据源的标准语法编写sql,动态调整数据库名称、数据表名称、数据查询的条件等信息,服务会按照对应的查询语句在目标数据源进行查询。
用户在查询任务结束后,可通过在数据平台上进行确认最终的查询结果是否正确,并进行后续的业务处理。
当大型任务时任务会持续运行,并记录查询的时间并将数据查询结果落入数据库。
如图2所示,任务执行成功后用户查询的数据结果将会保存到某一固定数据地址,并支持用户在界面上进行数据可视化的预览每个步骤的结果,预览结果如下。
步骤1的结果预览为:
name |
robin |
Total rows:1.
步骤2的结果预览为:
name | b |
robin |
Total rows:1.
若任务执行失败,模块或数据库出现异常,用户也可以根据模块的日志进行问题的定位和确认。
综上所述,借助于本发明的上述技术方案,通过对动态参数对配置查询条件进行动态目标数据库查询,将服务功能模块化、参数化以及流程可视化,且服务能够按照不同的数据源进行不同的模块注册,进而达到在工作和生产过程中使用该功能,能够极大的提升工作效率,减少重复工作项,且整体流程可视化、标准化以及易于版本管理,随时能够进行升级更新,不断增加多种数据源,多种数据类型,降低了用户使用的门槛和处理数据的复杂程度,提供了在任何环境和任何数据库下完成动态的数据查询。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种支持动态参数的关系型数据库查询方法,其特征在于,包括以下步骤:
S1把新增数据源在数据处理平台进行注册;
S2使用动态查询,在动态查询上游生成动态参数,传递给下游的动态数据查询;
S3动态数据查询,将上游参数对相应模块参数覆盖;
S4查询时会记录用户的查询结果成功或者失败,并记录用户的查询参数,然后返回数据结果;
S5 进行配置动态数据源,对目标数据库进行条件查询,动态数据源的配置是用户自定义数据库连接信息,按照不同的需求配置不同的连接数据源,动态调整连接的数据库IP、数据库端口、数据库用户名和数据库密码,服务便会按照对应的配置信息对目标数据库进行条件查询;
S6 进行配置动态查询条件,按照当前数据源进行编写语句,对目标数据源进行查询,动态查询条件的配置是用户自定义查询语句,按照当前数据源的语法编写sql、动态调整数据库名称、数据表名称和数据查询的条件,服务便会按照对应的查询语句在目标数据源进行查询;
S7查询任务结束后,可通过在数据平台上进行确认最终的查询结果是否正确。
2.根据权利要求1所述的一种支持动态参数的关系型数据库查询方法,其特征在于,任务执行成功后用户查询的数据结果将会保存到某一固定数据地址,如果查询失败,则会出现异常,用户则根据模块的日志进行问题定位。
3.一种支持动态参数的关系型数据库查询的装置,包括注册模块、动态查询模块、动态数据查询模块和动态配置模块,其中,
注册模块,对新增的数据源进行注册,并配置相关对应信息;
动态查询模块,根据不同的业务逻辑生成不同的动态参数,查询时记录用户查询结果、参数和数据返回结果;
动态数据查询模块,覆盖传递过来的动态参数的同名参数;
动态配置模块,配置动态数据源和动态查询条件,对目标数据库和数据源进行查询;
动态数据源的配置是用户自定义数据库连接信息,按照不同的需求配置不同的连接数据源,动态调整连接的数据库IP、数据库端口、数据库用户名和数据库密码,服务便会按照对应的配置信息对目标数据库进行条件查询;
动态查询条件的配置是用户自定义查询语句,按照当前数据源的语法编写sql、动态调整数据库名称、数据表名称和数据查询的条件,服务便会按照对应的查询语句在目标数据源进行查询。
4.根据权利要求3所述的一种支持动态参数的关系型数据库查询的装置,其特征在于,所述注册模块需要配置对应的接口、模块名称、模块参数、定义输入输出和使用方式。
5.根据权利要求3所述的一种支持动态参数的关系型数据库查询的装置,其特征在于,所述配置动态数据源和动态查询条件,通过用户自定义数据库和自定义查询语句连接信息,并配置不同的连接数据源和动态调整信息进行查询。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110065021.1A CN112749222B (zh) | 2021-01-18 | 2021-01-18 | 一种支持动态参数的关系型数据库查询方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110065021.1A CN112749222B (zh) | 2021-01-18 | 2021-01-18 | 一种支持动态参数的关系型数据库查询方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112749222A CN112749222A (zh) | 2021-05-04 |
CN112749222B true CN112749222B (zh) | 2024-03-19 |
Family
ID=75652381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110065021.1A Active CN112749222B (zh) | 2021-01-18 | 2021-01-18 | 一种支持动态参数的关系型数据库查询方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112749222B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145162A (zh) * | 2007-10-31 | 2008-03-19 | 金蝶软件(中国)有限公司 | 一种数据库动态查询的方法和系统 |
CN103944902A (zh) * | 2010-08-13 | 2014-07-23 | 华为技术有限公司 | 实现业务聚合Mashup业务的方法、装置和设备 |
CN107463662A (zh) * | 2017-07-31 | 2017-12-12 | 拉卡拉支付股份有限公司 | 一种动态Sql查询方法、装置 |
CN107615277A (zh) * | 2015-03-26 | 2018-01-19 | 卡斯维尔公司 | 用于查询数据源的系统和方法 |
CN108090154A (zh) * | 2017-12-08 | 2018-05-29 | 广州市申迪计算机系统有限公司 | 一种异构多源数据融合查询方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10970343B2 (en) * | 2016-11-04 | 2021-04-06 | Aveva Software, Llc | Adapting database queries for data virtualization over combined database stores |
-
2021
- 2021-01-18 CN CN202110065021.1A patent/CN112749222B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101145162A (zh) * | 2007-10-31 | 2008-03-19 | 金蝶软件(中国)有限公司 | 一种数据库动态查询的方法和系统 |
CN103944902A (zh) * | 2010-08-13 | 2014-07-23 | 华为技术有限公司 | 实现业务聚合Mashup业务的方法、装置和设备 |
CN107615277A (zh) * | 2015-03-26 | 2018-01-19 | 卡斯维尔公司 | 用于查询数据源的系统和方法 |
CN107463662A (zh) * | 2017-07-31 | 2017-12-12 | 拉卡拉支付股份有限公司 | 一种动态Sql查询方法、装置 |
CN108090154A (zh) * | 2017-12-08 | 2018-05-29 | 广州市申迪计算机系统有限公司 | 一种异构多源数据融合查询方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112749222A (zh) | 2021-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210191845A1 (en) | Unit testing of components of dataflow graphs | |
EP1477897A2 (en) | Reflection-based processing of input parameters for commands | |
CN111104421A (zh) | 一种基于数据接口标准配置的数据查询方法及装置 | |
CN104102511A (zh) | 一种基于SQL Server的脚本自动升级系统及方法 | |
CN104461531A (zh) | 一种报表系统自定义函数的实现方法 | |
US20100010962A1 (en) | Deferred Compilation of Stored Procedures | |
CN110737594A (zh) | 自动生成测试用例的数据库标准符合性测试方法及装置 | |
WO2019223136A1 (zh) | 数据获取方法、装置、计算机设备以及存储介质 | |
CN103177016B (zh) | 关系型数据库访问方法和装置 | |
CN110990011A (zh) | 一种自动化接口的数据请求方法 | |
WO2021022702A1 (zh) | 日志插入方法、装置、计算机装置及存储介质 | |
CN101763072A (zh) | 数控加工代码的转换方法和装置 | |
CN110413672B (zh) | 数据自动导入方法、装置及计算机可读存储介质 | |
CN112749222B (zh) | 一种支持动态参数的关系型数据库查询方法和装置 | |
CN111045660A (zh) | 一种网上税务申报数据校验方法、装置及存储介质 | |
TWI272532B (en) | Method and device for programming electronic devices using a uniform parameter format | |
CN109918082B (zh) | 软件开发的编译系统及方法 | |
CN103761203A (zh) | 一种用于不同硬件设备的通用连接方法 | |
CN100458800C (zh) | 电子电路设计的自动构建系统及自动构建方法 | |
CN114238469B (zh) | 数据提取接口开放方法、装置、计算机设备及存储介质 | |
US20210390037A1 (en) | Test case generation for software development using machine learning | |
WO2023014282A1 (en) | Device and method for automated generation of parameter testing requests | |
CN114218904A (zh) | 一种可配置报表导出设计的方法及系统 | |
CN112949243A (zh) | 参数配置方法、装置、计算机设备及存储介质 | |
CN111475140A (zh) | 基于事件驱动架构的App组件化方法及事件驱动架构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |