sqlite3: 用脚本批量导出sqlite数据库中的表格数据

应用场景:kobas3.0的注释库中,有很多关系对应表。如果你单独把它提取出来,用来做自己的注释也是不错的。

假设你需要nta.db中的表格信息如何做?
第一步:查看这个文件中有哪些表格。

node17:~>sqlite3 ~/biosoft/kobas-3.0/sqlite3/nta.db
#SQLite version 3.13.0 2016-05-18 10:57:30
#Enter ".help" for usage hints.
sqlite> .tables
Diseases            GeneGis             GeneUniprotkbAcs    Orthologs
GeneDiseases        GeneGos             Genes               Pathways
GeneEnsemblGeneIds  GeneGoslims         Gos
GeneEntrezGeneIds   GenePathways        Goslims

#有了这些表格信息,就可以批量导出了。
先退出sqlite运行环境。
sqlite> .quit

第二步:在txt文本中编辑好脚本信息,最后复制粘贴到shell中运行即可。

sqlite3 ~/biosoft/kobas-3.0/sqlite3/nta.db  <

这里解释一下每句都是什么意思

.output nta_GenePathways.txt  ##sqlite语句:意思是后续内容将输出至文本nta_GenePathways.txt。目录是当前目录。
.headers on    #显示表头
.separator "\t" "\r\n"    #设置列与行的分隔符。列设为tab,行设置为"\r\n"。
select * from GenePathways;  #sql语句,把表格里的内容都显示出来。
.output stdout   #屏幕上的内容输出至设定文件中,并结束此次输出。

类似的内容也可以这样改。

sqlite3 ~/biosoft/kobas-3.0/sqlite3/nta.db  <

你可能感兴趣的:(sqlite3: 用脚本批量导出sqlite数据库中的表格数据)