一种json格式文本导入数据库的方法

文档序号:10724952阅读:843来源:国知局
一种json格式文本导入数据库的方法【专利摘要】本发明公开了一种JSON格式文本导入数据库的方法,其实现过程为:首先查找需要转换的JSON文本文件,并将查找到的JSON文本文件转换成sql语句,然后在数据库中建立与该sql语句表相对应的数据库表,并将数据写入到数据库中。该一种JSON格式文本导入数据库的方法与现有技术相比,本发明可以适用于不同的数据库场景,既节省了人力,又提高工作效率,为统计信息的工作提供一种快速可执行的方法,实用性强,易于推广。【专利说明】一种JSON格式文本导入数据库的方法
技术领域
[0001]本发明涉及数据存储
技术领域
,具体地说是一种实用性强、JSON格式文本导入数据库的方法。【
背景技术
】[0002]随着存储系统业务复杂性的不断提升,人们对数据的应用场景要求越来越高。目前市面上使用的各个平台之间数据转换格式复杂多样,json作为一种轻量级的数据交换格式,完全独立于语音的文本格式,但是也使用了类似于C,C#,JAVA等语言的习惯,使得JSON成为理想的数据交换语言,从而广泛应用于各种场景下。[0003]而JSON格式文本中往往数据量很大,直接查看显得非常复杂,在此情况下为了更方便的处理数据,我们希望把这些JSON格式的数据导入到数据库中。针对这种情况时,json文本格式能够转换为SQL语句,导入到数据库中显得尤为重要。[0004]基于以上内容,我们提出一种全新的SON格式文本导入数据库的方法。【
发明内容】[0005]本发明的技术任务是针对以上不足之处,提供一种实用性强、JSON格式文本导入数据库的方法。[0006]—种JSON格式文本导入数据库的方法,其实现过程为:[0007]首先查找需要转换的JSON文本文件,并将查找到的JSON文本文件转换成sql语句,然后在数据库中建立与该sql语句表相对应的数据库表,并将数据写入到数据库中。[0008]查找并转换JSON文本文件过程为:[0009]在系统指定目录下确认是否存在需要转换格式的JSON文本文件,如果存在,则执行转换脚本;[0010]转换脚本执行时,首先读取指定目录下JSON文本文件存入数组中;[0011]将数组中字符串按格式截取拼接成为insert语句;[0012]输出转换完成后的sql语句到结果文件中。[0013]在数据库中建立与该sql语句表相对应的数据库表的具体过程为:[0014]在数据库中建立与insert语句表结构一致的数据库表;然后在数据库中执行结果文件,即执行后缀为.sql的文件,最后将数据写入数据库中。[0015]本发明的一种JSON格式文本导入数据库的方法,具有以下优点:[0016]本发明的一种JSON格式文本导入数据库的方法,通过执行转换脚本的方法,可以把JSON格式文本转换为insert格式SQL语句;不同结构的JSON格式文本,可以生成不同的insert格式SQL语句;insert格式的SQL语句可以在各种数据库下执行,可以适用于不同的数据库场景,既节省了人力,又提高工作效率,为统计信息的工作提供一种快速可执行的方法,实用性强,易于推广。【附图说明】[0017]附图1为本发明的实现流程图。【具体实施方式】[0018]下面结合附图及具体实施例对本发明作进一步说明。[0019]如附图1所示,本发明提供一种JSON格式文本导入数据库的方法,其实现过程为:[0020]首先查找需要转换的JSON文本文件,并将查找到的JSON文本文件转换成sql语句,然后在数据库中建立与该sql语句表相对应的数据库表,并将数据写入到数据库中。[0021]查找并转换JSON文本文件过程为:[0022]在系统指定目录下确认是否存在需要转换格式的JSON文本文件,如果存在,则执行转换脚本;[0023]转换脚本执行时,首先读取指定目录下JSON文本文件存入数组中;[0024]将数组中字符串按格式截取拼接成为insert语句;[0025]输出转换完成后的sql语句到结果文件中。[0026]在数据库中建立与该sql语句表相对应的数据库表的具体过程为:[0027]在数据库中建立与insert语句表结构一致的数据库表;然后在数据库中执行结果文件,即执行后缀为.sql的文件,最后将数据写入数据库中。[0028]基于该方法,本发明的具体实施过程如下所述:[0029]—、上传JSON格式文本文件到系统指定目录下,如下:[0030]/tmp/xxx.json。[0031]二、编写转换文件,读取系统指定目录下的JSON格式文本文件。[0032]#-*-coding:UTF_8-*-[0033]importjson#导入json模块[0034]data=[]#定义数组[0035]withopen('/tmp/xxx.json')asf:[0036]forlineinf:[0037]data.append(json.1oads(Iine))#读取指定目录下的json文件。[0038]三、将数组中字符串按格式截取拼接成为insert语句。[0039]str="\r\n"[0040]foritemindata:[0041]Sprintjson.dumps(item)[0042]str=str+//insertinto表名(字段名I,字段名2,字段名3,字段名4,字段名5,字段名6)values〃[0043]str=str+"(’%s,,,%s,,,%s,,,%s,,,%s,,,%s,);\r\n"%(item[,字段名1’],^咖[’字段名2’],^_[’字段名3’],^_[’字段名4’],^咖[’字段名5’],^咖[’字段名6’])。[0044]#根据xxx.json格式不同,insert拼接语句字段可调整#。[0045]四、输出转换完成后的sql语句到结果文件中。[0046]importcodecs[0047]file_object=codecs.0pen('xxx.sql,,,w,,"utf_8")#转换结果写入xxx.sql,采用utf-8格式字符[0048]file_object.write(str)[0049]file_object.close()[0050]print〃success〃#打印转换结果成功。[0051]五、在数据库中建立与insert语句表结构一致的数据库表。[0052]Createtable[表名]([字段I]类型,[字段2]类型,...)。[0053]六、在数据库中执行转换结果文件。[0054]上述【具体实施方式】仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述【具体实施方式】,任何符合本发明的一种JSON格式文本导入数据库的方法的权利要求书的且任何所述
技术领域
的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。【主权项】1.一种JSON格式文本导入数据库的方法,其特征在于,其实现过程为:首先查找需要转换的JSON文本文件,并将查找到的JSON文本文件转换成sql语句,然后在数据库中建立与该sql语句表相对应的数据库表,并将数据写入到数据库中。2.根据权利要求1所述的一种JSON格式文本导入数据库的方法,其特征在于,查找并转换JSON文本文件过程为:在系统指定目录下确认是否存在需要转换格式的JSON文本文件,如果存在,则执行转换脚本;转换脚本执行时,首先读取指定目录下JSON文本文件存入数组中;将数组中字符串按格式截取拼接成为insert语句;输出转换完成后的sql语句到结果文件中。3.根据权利要求1所述的一种JSON格式文本导入数据库的方法,其特征在于,在数据库中建立与该sql语句表相对应的数据库表的具体过程为:在数据库中建立与insert语句表结构一致的数据库表;然后在数据库中执行结果文件,即执行后缀为.sql的文件,最后将数据写入数据库中。【文档编号】G06F17/30GK106095824SQ201610380190【公开日】2016年11月9日【申请日】2016年6月1日【发明人】苏宁宁【申请人】浪潮电子信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1