Postgres数据库中excel的导入和导出
使用Windows系统,excel的总是不可避免。
Postgres版本为9.3.6;Windows 8.1 64位。
这里没有找到excel直接导入Postgres的方法,有一个工具是xlstopg,类似SQL Server的导入和导出数据向导,但不是开源的;可以到网上搜下玩玩(好像试用版只能导1000条记录),我在不知名网站上下了个企图是破解版,结果电脑中毒,花了两个晚上时间,电脑才幸而没有重装系统。我只能说有些网站太不是东西了,你说你里面很多插件(游戏的客户端、日历等乱七八糟的东西),我忍了;还弹出那么多广告(游戏的、色情的)网页,我TMD也忍了,谁让我想省事手贱下载的呢;结果呢绿色个蛋啊,还是和我第一次在其他网站上下载的xlstopg一样只能导1000条记录,这我还TMD的忍了;关键是NNND的,我把乱七八糟的东西卸载了,联网20分钟左右,桌面右下角跳出广告,一直跳,CPU很快就100%而且很稳定一直100%。好了,牢骚到这里,打算把处理这次事件过程写下来说说处理的思路。
这里处理excel变通下:Postgres有个copy的命令,可以把CSV格式导入数据库。把excel另存为CSV格式再导入Postgres;首先要把表建好,然后使用以下命令
命令:copy test from 'D:/a.csv' delimiter as ',' csv quote as '"'
test是表名
'D:/a.csv' 表示路径,路径中含有中文不行,可能因为我的postgres编码格式是utf8,反正我是使用中文不行,改为英文就好了。
如果查询出的结果要导出到excel中,我也是先导成txt格式然后再转化为excel。
导成CSV格式,利用SQL查询窗口文件--导出
然后再建立excel打开txt,也需要选择字符编码等,复制可能会是乱码;最后另存为excel格式就ok了。