excel/csv导入postgresql

来源:互联网 发布:百度网盘无限试用 mac 编辑:程序博客网 时间:2024/05/17 22:32

测试环境:
·windows 7
·postgre 9.1

很多时候我们需要将excel中的数据导入数据库中,本例中我们将excel导入postgre。步骤如下:

·将excel处理好后,另存为csv(Comma Delimited).
·运行SQL shell(psql) 
·运行'COPY mytable FROM '/myfile.csv'  WITH CSV  HEADER;



postgre数据库中的表vender,创建表的语句如下:

CREATE TABLE vender(  sid numeric(15,0) NOT NULL  , -- 唯一序列号  vender_id character varying(12) NOT NULL, -- Vender编号   vender_name character varying(128), -- Vender名称 小于32个字符  connector character varying(50), -- 联系人  phone character varying(20), -- 联系电话  email character varying(128), -- 邮件  industry character varying(32), -- 行业   created_by character varying(32) NOT NULL, -- 创建者  created_dt timestamp without time zone NOT NULL, -- 创建时间  version numeric(9,0) NOT NULL DEFAULT 1, -- 版本号  updated_by character varying(32), -- 更新者  updated_dt timestamp without time zone, -- 更新时间  del_flg numeric(1,0) NOT NULL -- 删除标志 0:有效、1:无效)

注意其中的NOT NULL字段。


·将excel处理好后,另存为csv(Comma Delimited).

·以下是excel中需要导入的数据,我们将它另存为csv(comma delimited),保存到E:\Vendor.csv ,注意表头和要导入的表中的字段对应。

sidvender_idvender_nameconnectorcreated_bycreated_dtversiondel_flg1100V20000001AABooooadmin2012-06-28101101V20000002BBHAOOOOadmin2012-06-2910

·运行SQL shell(psql) 

·通过“开始—程序—postgreSQL9.1–SQL shell(psql)” 打开psql。


·运行'COPY mytable FROM '/myfile.csv'  WITH CSV  HEADER;

执行postgre的copy命令:

postgres=# COPY vender(sid,vender_id,vender_name,connector,created_by,created_dt,version,del_flg) from 'E:\Vendor.csv' WITH CSV  HEADER;

运行结果:成功导入63条记录

COPY 63postgres=#
1 0
原创粉丝点击