db2导出表
创始人
2024-05-02 09:08:45

db2基础操作

1.启动

db2 start

2.连接

db2 connect to [dbname] user [username] using [password]

3.列出库

db2 list db directory

4.列出表

db2 list tables

5.查询库

db2 "select * from [tablename] where [conditions]"

6.生成建表脚本

db2look –d pmp –e –o f:\export\init.sql

7.建表(导入表结构,无数据)

db2 –tvf f:\export\init.sql

8.导出数据

db2move [dbname] export 

#with  filter

db2move [dbname] export -tn [tablename] -tc [table-definer] -l [path]

9.导入数据 用import(新建或填充) load(仅填充)

db2move [dbname] import

10.导出csv

    db2 "export to d:\data\tab1.ixf of ixf lobs to d:\data\ lobfile lobs modified by lobsinsepfiles  messages d:\data\tab1.msg select * from schema_name.table_name"

   schema_name 是表所属,table_name是表名, lobsinsepfiles 或 lobsinfile 是生成lob文件 前一个是生成每个,后面是生成到一个文件中

11.导出表结构(所有表)

db2look –d [dbname] –e –o f:\export\init.sql

执行建表脚本

db2 –tvf f:\export\init.sql

12.查看版本

db2licm -l 

db2导出所有表至csv

1.linux

for t in $(db2 -x "select rtrim(tabschema) || '.' || rtrim(tabname) from syscat.tables where tabschema = 'DB2INST1'"); do db2 "export to $t.csv of del modified by coldel, select * from $t"; done

会把DB2INST1这个schema下面的所有表 以csv的格式输出到当前目录 路径和命名方式可以自行调整

2.win

windows的for语句 

for {%% | %} in () do  []

似乎set部分不能跟指令,浅浅测试了一下,会把b2 -x "select rtrim(tabschema) || '.' || rtrim(tabname) from syscat.tables where tabschema = 'DB2INST1'"这个部分解析成字符串,如果哪位知道怎么在set部分添加指令麻烦留个言。

先把表名保存到单独的txt文件,再进行循环

 for /f %t in (test.txt) do db2 "export to %t.csv of del modified by coldel, select * from %t" 

参考

https://stackoverflow.com/questions/56691654/export-data-from-db2-from-all-tables-in-n-schemas-into-csv-with-column-names

IBM Documentation

相关内容

热门资讯

北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...