0%

DB2导出表数据

DB2导出表数据

使用DB2命令行导出

打开命令行界面,登录DB2数据库

1
db2 connect to <database>

登录成功后,可执行命令查看指定schema下的所有表名

1
2
# 将schema_name替换为要导出数据的schema名称
db2 "select TABSCHEMA, TABNAME from SYSCAT.TABLES where TABSCHEMA = 'schema_name'"

执行命令导出指定表数据

1
2
3
4
# del (ASCII 格式)
db2 "export to export_dir/table_name.csv of del select * from schema_name.table_name"
# modified by nochardel (去除字符串类型数据前后的")
db2 "export to export_dir/table_name.csv of del modified by nochardel select * from schema_name.table_name"

释放链接

1
2
3
4
5
6
7
8
9
10
db2 connect reset

# 如果是退出编辑器 quit
# quit 退出clp,但数据库连接不断开

# 如果是断开数据库连接释放资源 connect reset
# connect reset 断开数据库连接但不退出clp

# 如果是修改了参数下次使用数据服务想要生效 terminate
# terminate 断开数据库连接,同时退出clp

del文件格式下的修饰符

除了nochardel还有其他修饰符:

  • chardelx

x是单个字符串定界符,缺省值为双引号 (")
单引号 (') 也可以指定为字符串定界符,如下所示:

1
modified by chardel''
  • coldelx

x是单个字符列分隔符, 缺省值为逗号 (,)。 使用指定的字符来代替逗号,以指示列结束
使用分号字符 (;) 作为导出数据的列定界符:

1
modified by coldel;
  • striplzeros

指定移走数据前导的0,如:+00001.8 –> +1.8

  • decplusblank

指定对正数是否用+符号,缺省带+,可以指定不加正数符号

详细见: EXPORT 命令