Postgresql数据库导入和导出CSV格式

                                                                     Postgresql数据库导入和导出CSV格式


1、生成csv格式文件样式


2 tank 11 31
3 zhang 11 32
4 tom 10 33
5 gao 11 34
6 tank 12 35
7 zhang 13 36
8 tom 14 37
9 gao 15 38
10 tank 16 39
11 zhang 17 40
12 tom 18 41

2、建立好表结构


create table tanktab(id integer,name varchar(20),departno integer,age integer);
 
3、导入postgresql数据库表tanktab中(注意导入用户必须要有超级管员权限 OS:环境语言(LANG=zh_CN.GBK)否则导出中文乱码
[postgres@db ~]$ echo $LANG 
zh_CN.GBK 
 
COPY tanktab from '/u02/tank/123456.csv' with csv header;
 
4、从postgresql数据库表tanktab中导出csv格式文件//(OS:环境语言(LANG=zh_CN.GBK)否则导出中文乱码)
 
[postgres@db ~]$ echo $LANG 
zh_CN.GBK 
数据库编码:
 
  
tank=# \l
                                  List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileges   
-----------+----------+----------+-------------+-------------+-----------------------
 postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 tank      | tank     | UTF8     | en_US.UTF-8 | en_US.UTF-8 | 
 template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres          +
           |          |          |             |             | postgres=CTc/postgres
(4 rows)


tank=#

 
COPY (select * from tanktab) to '/u02/tank/tank.csv' with csv header; 


5、生成的tank.csv格式如下



id name departno age
2 tank 11 31
3 zhang 11 32
4 tom 10 33
5 gao 11 34
6 tank 12 35
7 zhang 13 36
8 tom 14 37

你可能感兴趣的:(postgresql)