做点Postgresql笔记

做点Postgresql笔记,第1张

概述做点Postgresql笔记 没错这时本博主的新坑,而且挖的好辛苦: 如何在对postgis插件各种误 *** 作导致postgis的相关表项被删除后,重新添加postgis插件 由于是小白,初来乍到,把postgis相关联的表一股脑的误删除了,导致postgresql提供的关于gis的一系列“ST_”(Space Type)功能函数都无法使用,然后就是各种慌张。 解决方案是: 1、确认当前pg数据库已经 做点Postgresql笔记

没错这时本博主的新坑,而且挖的好辛苦:

如何在对postgis插件各种误 *** 作导致postgis的相关表项被删除后,重新添加postgis插件
由于是小白,初来乍到,把postgis相关联的表一股脑的误删除了,导致postgresql提供的关于gis的一系列“ST_”(Space Type)功能函数都无法使用,然后就是各种慌张。
解决方案是:
1、确认当前pg数据库已经安装有postgis;
2、如果1成立,重新加载上postgis插件即可,加载方式为:在指定数据库对象的查询中写入以下语句:

CREATE EXTENSION postgis

这里我估计只是装了一个简单的postgis版本,它还有很多丰富的相关扩展我没有装上。只是目前这样 *** 作满足了我现在使用ST函数的要求。如果还有插件缺失,我认为用类似方法可以得到解决。
3、如果1不成立,那么需要确认是否安装好postgis,没有则需要先安装postgis。

为什么某些表明明有这个字段,点击查询后显示此表不存在此字段
这一点是我写java查询句柄访问数据库时发生的错误,有关这一点还没有解决,例如我在输入:

select taxiNumber from taxiinfo

时,就会报出错误,表示没有此字段,因此只能暂用:`

select * from taxiinfo

然后再在代码中取结果的不同字段(取我想要的那个字段),这样把结果全部查出的方式应该是降低了代码的执行效率的。

大批量插入数据的优化方法

主要参考的是德哥的这篇文章,批量插入,最高可达插入 249088 条数据每秒,详见:
@L_404_0@

不知道为啥上面的地址总是挂掉,在此附上“德哥”的github主页,有需者可访问:
https://github.com/digoal

我采用了批量插入,且每次批量插入行数为5000条后,对于10GB的数据,原本需要8天,现在1天已经插入一半左右的数据了,因此在这做总结,发现批量插入确实能够提高插入效率,待我稍后检查插入数据是否正确。

注:下面是我写的代码,此部分可以不看。我采用的是java代码批量插入数据,代码为:

connection c = null;statement stmt = null;try{    Class.forname("org.postgresql.Driver");    c = DriverManager.getConnection("jdbc:postgresql://...","postgres","password");    stmt = c.createStatement();    ...    String insertsql = "insert into ... values ";    for(int i:insertListLength-2)        insertsql += "(insertList[i].attribute1,insertList[i].attribute2,insertList[i].attribute3),...,insertList[i].attributen),";    insertsql += "(insertList[insertListLength-1].attribute1,insertList[insertListLength-1].attribute2,insertList[insertListLength-1].attributen);";    stmt.executeUpdate(insertsql);    ...}catch(Exception e){    c.rollback();}finally{    stmt.close();    c.close();}

代码是我怕遗忘进行的记录,可不看。

未完待续 总结

以上是内存溢出为你收集整理的做点Postgresql笔记全部内容,希望文章能够帮你解决做点Postgresql笔记所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1174175.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存