CN115587095A - 数据库分表创建方法、装置及存储介质 - Google Patents

数据库分表创建方法、装置及存储介质 Download PDF

Info

Publication number
CN115587095A
CN115587095A CN202211231126.0A CN202211231126A CN115587095A CN 115587095 A CN115587095 A CN 115587095A CN 202211231126 A CN202211231126 A CN 202211231126A CN 115587095 A CN115587095 A CN 115587095A
Authority
CN
China
Prior art keywords
sub
sql statement
database
database table
entity class
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
Application number
CN202211231126.0A
Other languages
English (en)
Inventor
陈振青
李敏风
林少明
王连光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Xuanwu Wireless Technology Co Ltd
Original Assignee
Guangzhou Xuanwu Wireless Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Xuanwu Wireless Technology Co Ltd filed Critical Guangzhou Xuanwu Wireless Technology Co Ltd
Priority to CN202211231126.0A priority Critical patent/CN115587095A/zh
Publication of CN115587095A publication Critical patent/CN115587095A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种数据库分表创建方法、装置、设备及存储介质,所述方法包括:获取目标数据库表的实体类创建指令以及针对所述目标数据库表的分表规则配置信息;基于所述实体类创建指令生成实体类,以使预设的Hibernate框架基于所述实体类自动生成对应的数据库表sql语句;从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表对应的数据库表sql语句;根据所述分表规则配置信息以及所述数据库表sql语句生成分表sql语句;基于所述分表sql语句生成与目标数据库表对应的分表。通过本发明用户只需要简单配置相应的分表规则,即可自动完成分表的创建,有效简化了数据库分表的创建过程并提高了其效率。

Description

数据库分表创建方法、装置及存储介质
技术领域
本发明涉及数据库技术领域,尤其是涉及一种数据库分表创建方法、装置及存储介质。
背景技术
Hiberate是一个对象关系映射框架,它可以很好的屏蔽不同数据库(比如MySQL、Oracle等)之间的差异,自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操作数据库,并不需要编写SQL语句。
在使用Hibernate时,只需要创建实体类,Hibernate会根据我们创建的实体类自动创建或更新对应的数据库表,但Hibernate不支持数据库分表的创建和更新操作。由于大多业务系统的业务数据量比较大,通常需要对数据进行分表存储,目前,对于此类需求需要手动去创建分表,且业务系统通常需要支持多种数据库,因此分表创建的过程操作繁琐且效率低下。
发明内容
本发明旨在提供一种数据库分表创建方法、装置及存储介质,以解决上述技术问题,从而能够简化数据库分表的创建过程并提高其效率。
为了解决上述技术问题,本发明提供了一种数据库分表创建方法,包括:
获取目标数据库表的实体类创建指令以及针对所述目标数据库表的分表规则配置信息;
基于所述实体类创建指令生成实体类,以使预设的Hibernate框架基于所述实体类自动生成对应的数据库表sql语句;
从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表对应的数据库表sql语句;
根据所述分表规则配置信息以及所述数据库表sql语句生成分表sql语句;
基于所述分表sql语句生成与目标数据库表对应的分表。
进一步地,所述从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表对应的数据库表sql语句,包括:
基于所述分表规则配置信息确定需要进行分表操作的目标数据库表名称,并从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表名称对应的数据库表sql语句。
进一步地,所述根据所述分表规则配置信息以及所述数据库表sql语句生成分表sql语句,包括:
提取出所述分表规则配置信息中的分表后缀信息;
利用正则表达方式对所述数据库表sql语句进行拆分后与所述分表后缀信息进行拼接,生成得到所述分表sql语句。
进一步地,在所述基于所述实体类创建指令生成实体类,以使预设的Hibernate框架基于所述实体类自动生成对应的数据库表sql语句之前,还包括:
基于预设的配置文件将所述Hibernate框架的ddl-auto属性配置为update模式,并基于所述配置文件对所述Hibernate框架指定的sql语句存储文件进行配置。
本发明还提供一种数据库分表创建装置,包括:
数据获取模块,用于获取目标数据库表的实体类创建指令以及针对所述目标数据库表的分表规则配置信息;
第一生成模块,用于基于所述实体类创建指令生成实体类,以使预设的Hibernate框架基于所述实体类自动生成对应的数据库表sql语句;
语句获取模块,用于从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表对应的数据库表sql语句;
第二生成模块,用于根据所述分表规则配置信息以及所述数据库表sql语句生成分表sql语句;
分表生成模块,用于基于所述分表sql语句生成与目标数据库表对应的分表。
进一步地,所述语句获取模块具体用于:
基于所述分表规则配置信息确定需要进行分表操作的目标数据库表名称,并从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表名称对应的数据库表sql语句。
进一步地,所述第二生成模块具体用于:
提取出所述分表规则配置信息中的分表后缀信息;
利用正则表达方式对所述数据库表sql语句进行拆分后与所述分表后缀信息进行拼接,生成得到所述分表sql语句。
进一步地,所述的数据库分表创建装置还包括属性配置模块,其用于:
基于预设的配置文件将所述Hibernate框架的ddl-auto属性配置为update模式,并基于所述配置文件对所述Hibernate框架指定的sql语句存储文件进行配置。
本发明还提供一种终端设备,包括处理器和存储有计算机程序的存储器,所述处理器执行所述计算机程序时实现任一项所述的数据库分表创建方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现任一项所述的数据库分表创建方法。
与现有技术相比,本发明具有如下有益效果:
本发明提供了一种数据库分表创建方法、装置、设备及存储介质,所述方法包括:获取目标数据库表的实体类创建指令以及针对所述目标数据库表的分表规则配置信息;基于所述实体类创建指令生成实体类,以使预设的Hibernate框架基于所述实体类自动生成对应的数据库表sql语句;从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表对应的数据库表sql语句;根据所述分表规则配置信息以及所述数据库表sql语句生成分表sql语句;基于所述分表sql语句生成与目标数据库表对应的分表。通过本发明用户只需要简单配置相应的分表规则,即可自动完成分表的创建,有效简化了数据库分表的创建过程并提高了其效率。
附图说明
图1是本发明提供的数据库分表创建方法的流程示意图之一;
图2是本发明提供的数据库分表创建方法的流程示意图之二;
图3是本发明提供的数据库分表创建装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,本发明实施例提供了一种数据库分表创建方法,可以包括步骤:
S1、获取目标数据库表的实体类创建指令以及针对所述目标数据库表的分表规则配置信息;
S2、基于所述实体类创建指令生成实体类,以使预设的Hibernate框架基于所述实体类自动生成对应的数据库表sql语句;
S3、从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表对应的数据库表sql语句;
S4、根据所述分表规则配置信息以及所述数据库表sql语句生成分表sql语句;
S5、基于所述分表sql语句生成与目标数据库表对应的分表。
在本发明实施例中,用户可以根据需要创建的数据库表输入实体类创建指令,该指令可以采用面向对象的编程语言如java等;此外,用户可以根据需求输入需要进行分表的配置信息,例如包括对哪个表格进行分表、分表的数量、后缀名称等内容。本方法的程序可以基于实体类创建指令生成对应的实体类,Hibernate框架可以根据生成的实体类自动生成相应的数据库表sql语句,并将这些数据库表sql语句存储到指定的文件中。然后从指定的sql语句存储文件中获取需要进行分表的目标数据库表对应的数据库表sql语句,并根据分表规则配置信息对数据库表sql语句进行拆解和拼接生成新的分表sql语句,最后即可基于分表sql语句生成相应的数据库分表。
通过本发明实施例提供的数据库分表创建方法,用户只需要简单配置相应的分表规则,即可自动完成分表的创建,有效简化了数据库分表的创建过程并提高了其效率。
在本发明实施例中,进一步地,所述从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表对应的数据库表sql语句,包括:
基于所述分表规则配置信息确定需要进行分表操作的目标数据库表名称,并从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表名称对应的数据库表sql语句。
需要说明的是,sql语句存储文件中可能存储有多个数据库表的数据库表sql语句,在需要分表时,可以在分表规则配置信息中写明需要进行分表的目标数据库表名称,从而在sql语句存储文件中根据目标数据库表名称来获取相应的数据库表sql语句。
在本发明实施例中,进一步地,所述根据所述分表规则配置信息以及所述数据库表sql语句生成分表sql语句,包括:
提取出所述分表规则配置信息中的分表后缀信息;
利用正则表达方式对所述数据库表sql语句进行拆分后与所述分表后缀信息进行拼接,生成得到所述分表sql语句。
在本发明实施例中,可以在分表规则配置信息中配置分表后各个数据库分表的名称后缀,利用正则表达方式根据所述数据库表sql语句和各个名称后缀进行拼接即可以生成新的分表sql语句。
在本发明实施例中,进一步地,在所述基于所述实体类创建指令生成实体类,以使预设的Hibernate框架基于所述实体类自动生成对应的数据库表sql语句之前,还包括:
基于预设的配置文件将所述Hibernate框架的ddl-auto属性配置为update模式,并基于所述配置文件对所述Hibernate框架指定的sql语句存储文件进行配置。
需要说明的是,在开始分表自动创建之前需要通过配置文件设置数据库相关操作为update,并配置生成的sql语句输出到指定文件updateSchema.sql。可以理解的是,当ddl-auto属性配置为update时,hibernate框架在第一次加载时根据模型(实体类)自动创建数据库表结构,以后加载时根据模型的变动自动更新表结构,比如模型增加了一个属性,而对应的数据库表会增加一个列。
基于上述方案,为便于更好的理解本发明实施例提供的数据库分表创建方法,以下进行详细说明:
请参见图2,本发明实施例提供的数据库分表创建方法可以通过以下步骤实现:
1.通过配置文件设置数据库相关操作为update,并配置生成的sql语句输出到指定文件updateSchema.sql。
2.创建数据库实体类并配置分表规则。
3.读取updateSchema.sql文件中的sql语句,并获取分表对应的sql语句。
4.根据分表的后缀拼接新的分表名称,并生成新的sql语句。
5.执行新的sql语句完成分表的生成和更新操作。
其中,步骤2中描述的数据库实体类相当于是一个模型,比如我们定义一个【人】这个模型,可以有【姓名】【年龄】等属性,具体有多少属性取决于实际需要。那么该模型在Java领域所对应的实体类如下:
Figure BDA0003881161210000061
需要说明的是,步骤4中“新的sql语句”与步骤3中获取的“分表对应的sql语句”除了表名称不同,其他的都是一样的。
作为举例,以下为本发明实施例的具体实现方式:
1、通过配置文件设置数据库相关操作为update,并配置生成的sql语句输出到指定文件updateSchema.sql,具体配置信息如下:
Figure BDA0003881161210000062
Figure BDA0003881161210000071
2、创建数据库实体类并配置分表规则,例如下面代码的实体类LoginToken以及对应的配置信息。
(1)实体类LoginToken代码如下:
Figure BDA0003881161210000072
Figure BDA0003881161210000081
(2)实体类LoginToken对应分表配置如下:
Figure BDA0003881161210000082
3、读取updateSchema.sql文件中的sql语句,根据配置中需要分表的名称获取到该表对应sql语句,例如上面例子中的ncs_login_token表,通过updateSchema.sql获取到的相关sql语句如下:
create table ncs_login_token(id bigint not null,create_time datetime,msg_id varchar(100),request_time datetime,response_time datetime,result_codevarchar(20),primary key(id))engine=InnoDB;
4、根据分表的后缀配置拼接新的分表名称,并利用正则表达式生成新的sql语句,生成后的新sql语句如下:
create table ncs_login_token_01(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=InnoDB;
create table ncs_login_token_02(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=InnoDB;
create table ncs_login_token_03(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=InnoDB;
create table ncs_login_token_04(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=InnoDB;
create table ncs_login_token_05(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=InnoDB;
create table ncs_login_token_06(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=InnoDB;
create table ncs_login_token_07(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=InnoDB;
create table ncs_login_token_08(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=InnoDB;
create table ncs_login_token_09(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=InnoDB;
create table ncs_login_token_10(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=InnoDB;
create table ncs_login_token_11(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=InnoDB;
create table ncs_login_token_12(id bigint not null,create_timedatetime,msg_id varchar(100),request_time datetime,response_time datetime,result_code varchar(20),primary key(id))engine=Inno
5、通过程序执行新的sql语句完成分表的生成和更新操作。
需要说明的是,对于以上方法或流程实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作并不一定是本发明实施例所必须的。
请参见图3,本发明实施例还提供一种数据库分表创建装置,包括:
数据获取模块1,用于获取目标数据库表的实体类创建指令以及针对所述目标数据库表的分表规则配置信息;
第一生成模块2,用于基于所述实体类创建指令生成实体类,以使预设的Hibernate框架基于所述实体类自动生成对应的数据库表sql语句;
语句获取模块3,用于从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表对应的数据库表sql语句;
第二生成模块4,用于根据所述分表规则配置信息以及所述数据库表sql语句生成分表sql语句;
分表生成模块5,用于基于所述分表sql语句生成与目标数据库表对应的分表。
进一步地,所述语句获取模块3具体用于:
基于所述分表规则配置信息确定需要进行分表操作的目标数据库表名称,并从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表名称对应的数据库表sql语句。
进一步地,所述第二生成模块4具体用于:
提取出所述分表规则配置信息中的分表后缀信息;
利用正则表达方式对所述数据库表sql语句进行拆分后与所述分表后缀信息进行拼接,生成得到所述分表sql语句。
进一步地,所述的数据库分表创建装置还包括属性配置模块,其用于:
基于预设的配置文件将所述Hibernate框架的ddl-auto属性配置为update模式,并基于所述配置文件对所述Hibernate框架指定的sql语句存储文件进行配置。
可以理解的是上述装置项实施例,是与本发明方法项实施例相对应的,本发明实施例提供的一种数据库分表创建装置,可以实现本发明任意一项方法项实施例提供的数据库分表创建方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现任一项所述的数据库分表创建方法。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
所述领域的技术人员可以清楚地了解到,为了方便和简洁,上述描述的装置的具体工作过程,可参考前述方法实施例中对应的过程,在此不再赘述。
终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述终端设备可包括,但不仅限于,处理器、存储器。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分。
所述存储器可用于存储所述计算机程序,所述处理器通过运行或执行存储在所述存储器内的计算机程序,以及调用存储在存储器内的数据,实现所述终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据手机的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述存储介质为计算机可读存储介质,所述计算机程序存储在所述计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。

Claims (10)

1.一种数据库分表创建方法,其特征在于,包括:
获取目标数据库表的实体类创建指令以及针对所述目标数据库表的分表规则配置信息;
基于所述实体类创建指令生成实体类,以使预设的Hibernate框架基于所述实体类自动生成对应的数据库表sql语句;
从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表对应的数据库表sql语句;
根据所述分表规则配置信息以及所述数据库表sql语句生成分表sql语句;
基于所述分表sql语句生成与目标数据库表对应的分表。
2.根据权利要求1所述的数据库分表创建方法,其特征在于,所述从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表对应的数据库表sql语句,包括:
基于所述分表规则配置信息确定需要进行分表操作的目标数据库表名称,并从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表名称对应的数据库表sql语句。
3.根据权利要求1所述的数据库分表创建方法,其特征在于,所述根据所述分表规则配置信息以及所述数据库表sql语句生成分表sql语句,包括:
提取出所述分表规则配置信息中的分表后缀信息;
利用正则表达方式对所述数据库表sql语句进行拆分后与所述分表后缀信息进行拼接,生成得到所述分表sql语句。
4.根据权利要求1所述的数据库分表创建方法,其特征在于,在所述基于所述实体类创建指令生成实体类,以使预设的Hibernate框架基于所述实体类自动生成对应的数据库表sql语句之前,还包括:
基于预设的配置文件将所述Hibernate框架的ddl-auto属性配置为update模式,并基于所述配置文件对所述Hibernate框架指定的sql语句存储文件进行配置。
5.一种数据库分表创建装置,其特征在于,包括:
数据获取模块,用于获取目标数据库表的实体类创建指令以及针对所述目标数据库表的分表规则配置信息;
第一生成模块,用于基于所述实体类创建指令生成实体类,以使预设的Hibernate框架基于所述实体类自动生成对应的数据库表sql语句;
语句获取模块,用于从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表对应的数据库表sql语句;
第二生成模块,用于根据所述分表规则配置信息以及所述数据库表sql语句生成分表sql语句;
分表生成模块,用于基于所述分表sql语句生成与目标数据库表对应的分表。
6.根据权利要求5所述的数据库分表创建装置,其特征在于,所述语句获取模块具体用于:
基于所述分表规则配置信息确定需要进行分表操作的目标数据库表名称,并从所述Hibernate框架指定的sql语句存储文件中获取与所述目标数据库表名称对应的数据库表sql语句。
7.根据权利要求5所述的数据库分表创建装置,其特征在于,所述第二生成模块具体用于:
提取出所述分表规则配置信息中的分表后缀信息;
利用正则表达方式对所述数据库表sql语句进行拆分后与所述分表后缀信息进行拼接,生成得到所述分表sql语句。
8.根据权利要求5所述的数据库分表创建装置,其特征在于,还包括属性配置模块,其用于:
基于预设的配置文件将所述Hibernate框架的ddl-auto属性配置为update模式,并基于所述配置文件对所述Hibernate框架指定的sql语句存储文件进行配置。
9.一种终端设备,包括处理器和存储有计算机程序的存储器,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4任一项所述的数据库分表创建方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至4任一项所述的数据库分表创建方法。
CN202211231126.0A 2022-10-08 2022-10-08 数据库分表创建方法、装置及存储介质 Pending CN115587095A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211231126.0A CN115587095A (zh) 2022-10-08 2022-10-08 数据库分表创建方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211231126.0A CN115587095A (zh) 2022-10-08 2022-10-08 数据库分表创建方法、装置及存储介质

Publications (1)

Publication Number Publication Date
CN115587095A true CN115587095A (zh) 2023-01-10

Family

ID=84779493

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211231126.0A Pending CN115587095A (zh) 2022-10-08 2022-10-08 数据库分表创建方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN115587095A (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105224596A (zh) * 2015-08-27 2016-01-06 浪潮集团有限公司 一种访问数据的方法及装置
CN105550349A (zh) * 2015-12-28 2016-05-04 北京邮电大学 持久层装置及数据库操作方法
CN109408529A (zh) * 2018-11-12 2019-03-01 广州市千钧网络科技有限公司 一种底层数据的处理方法及系统
CN109542925A (zh) * 2018-10-26 2019-03-29 广州朗尊软件科技有限公司 数据库访问系统、方法、设备及多用户商城系统
CN113111239A (zh) * 2021-04-08 2021-07-13 北京联创新天科技有限公司 一种通用数据库操作方法、装置及其存储介质
CN113568924A (zh) * 2021-07-23 2021-10-29 北京达佳互联信息技术有限公司 一种数据处理方法、装置、电子设备及存储介质
CN113934726A (zh) * 2021-09-30 2022-01-14 潘峰 一种随机平滑分表方法、终端及存储介质
CN114416721A (zh) * 2021-12-14 2022-04-29 杭州安恒信息技术股份有限公司 自动建表方法、系统、可读存储介质及计算机设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105224596A (zh) * 2015-08-27 2016-01-06 浪潮集团有限公司 一种访问数据的方法及装置
CN105550349A (zh) * 2015-12-28 2016-05-04 北京邮电大学 持久层装置及数据库操作方法
CN109542925A (zh) * 2018-10-26 2019-03-29 广州朗尊软件科技有限公司 数据库访问系统、方法、设备及多用户商城系统
CN109408529A (zh) * 2018-11-12 2019-03-01 广州市千钧网络科技有限公司 一种底层数据的处理方法及系统
CN113111239A (zh) * 2021-04-08 2021-07-13 北京联创新天科技有限公司 一种通用数据库操作方法、装置及其存储介质
CN113568924A (zh) * 2021-07-23 2021-10-29 北京达佳互联信息技术有限公司 一种数据处理方法、装置、电子设备及存储介质
CN113934726A (zh) * 2021-09-30 2022-01-14 潘峰 一种随机平滑分表方法、终端及存储介质
CN114416721A (zh) * 2021-12-14 2022-04-29 杭州安恒信息技术股份有限公司 自动建表方法、系统、可读存储介质及计算机设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
常新: "\"农林业病虫害及气象信息远程监测系统\"", no. 06, pages 043 - 12 *
李文杰 等: ""分布式应用层中间件的设计"", vol. 30, no. 05, pages 12 - 14 *
钟林森 等: "《Spring Boot企业级项目开发 从入门到精通》", vol. 1, 华中科技大学出版社, pages: 062 *

Similar Documents

Publication Publication Date Title
CN110908997B (zh) 数据血缘构建方法、装置、服务器及可读存储介质
CN106598612B (zh) 一种数据库中数据表的操作方法及系统
CN108334609B (zh) Oracle中实现JSON格式数据存取的方法、装置、设备及存储介质
CN110795455A (zh) 依赖关系解析方法、电子装置、计算机设备及可读存储介质
CN110019111B (zh) 数据处理方法、装置、存储介质以及处理器
US9195456B2 (en) Managing a catalog of scripts
CN111125064B (zh) 一种生成数据库模式定义语句的方法和装置
CN113268500B (zh) 业务处理方法、装置及电子设备
CN112930529A (zh) 从概念数据模型生成软件工件
CN112015722A (zh) 数据库管理方法、数据血缘分析方法以及相关装置
CN110442585B (zh) 数据更新方法、数据更新装置、计算机设备及存储介质
US11782888B2 (en) Dynamic multi-platform model generation and deployment system
CN114443015A (zh) 一种基于数据库元数据的增删改查服务接口生成方法
US20170116208A1 (en) Non-uniform multi-row text file loading
CN115587095A (zh) 数据库分表创建方法、装置及存储介质
US20220284371A1 (en) Method, device and medium for a business function page
CN115617594A (zh) 用于生成激励信息的方法、装置、存储介质及程序产品
CN110727677B (zh) 数据仓库内表格的血缘关系追溯的方法和装置
CN114860362A (zh) 界面的更新方法及装置
CN114819631A (zh) 一种多任务的可视化方法、装置、计算机设备及存储介质
CN112860802A (zh) 数据库操作语句的处理方法、装置及电子设备
CN108073584B (zh) 一种数据处理方法及服务器
CN112883044A (zh) 用于数据库的数据处理方法、装置及计算机可读介质
CN114817276A (zh) 一种更新文案的方法、系统、设备及存储介质
CN111831659A (zh) 一种检查索引的方法、装置及计算设备

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20230110

RJ01 Rejection of invention patent application after publication