1. 场景描述

使用python连接greenplum或者postgresql。

2. 解决方案

2.1 真实代码

2.1.1 调用类
import dbgp as dbgp

# 执行
def execGP(params):
sql = params.get("sql")
# 从数据库获取数据
try:
data = dbgp.queryGp(sql)
except IndexError:
return sql
except KeyError:
return sql
except ValueError:
return sql
except Exception:
return sql if data.empty:
return "exception:无数据,请确认后重试" if __name__ == '__main__':
paramss = dict(
sql="select COALESCE(empno,0) as empno,COALESCE(mgr,0) as mgr from test_emp")
execGP(paramss)
2.1.2 Gp数据库连接类
import psycopg2

def queryGp(sql):
## 连接到一个给定的数据库
conn = psycopg2.connect(dbname="db-laowang", user="laowang", password="laowang123",port="5432", host="10.192.168.10", client_encoding="UTF-8") df = pd.read_sql(sql, con=conn)
## 关闭数据库连接
conn.close()
return df

2.2 代码说明

(1)调用类中异常的返回比较特殊,只指定Exception的话,其他的几种异常还捕获不到。

(2)psycopg2的安装就不再特别说明了,有网络的话可以直接在线安装,无网络的话可以参考下我的另一篇博客(python无网安装psycopg2)。

(3)数据库的连接配置适用于Greenplum和postgresql。


python连接greenplum_postgresql的更多相关文章

  1. 【初学python】使用python连接mysql数据查询结果并显示

    因为测试工作经常需要与后台数据库进行数据比较和统计,所以采用python编写连接数据库脚本方便测试,提高工作效率,脚本如下(python连接mysql需要引入第三方库MySQLdb,百度下载安装) # ...

  2. python连接mysql的驱动

    对于py2.7的朋友,直接可以用MySQLdb去连接,但是MySQLdb不支持python3.x.这是需要注意的~ 那应该用什么python连接mysql的驱动呢,在stackoverflow上有人解 ...

  3. paip. 解决php 以及 python 连接access无效的参数量。参数不足,期待是 1”的错误

    paip. 解决php 以及 python 连接access无效的参数量.参数不足,期待是 1"的错误 作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源 ...

  4. python 连接sql server

    linux 下pymssql模块的安装 所需压缩包:pymssql-2.1.0.tar.bz2freetds-patched.tar.gz 安装: tar -xvf pymssql-2.1.0.tar ...

  5. paip.python连接mysql最佳实践o4

    paip.python连接mysql最佳实践o4 python连接mysql 还使用了不少时间...,相比php困难多了..麻烦的.. 而php,就容易的多兰.. python标准库没mysql库,只 ...

  6. python连接字符串的方式

    发现Python连接字符串又是用的不顺手,影响速度 1.数字对字符进行拼接 s=""  #定义这个字符串,方便做连接 print type(s) for i in range(10 ...

  7. python连接zookeeper的日志问题

    用python连接zookeeper时,在终端里,一直会有zookeeper的日志冒出来,这样会很烦. -- ::,:(: Exceeded deadline by 11ms 解决方法是在连接后设置一 ...

  8. python 连接Mysql数据库

    1.下载http://dev.mysql.com/downloads/connector/python/ 由于Python安装的是3.4,所以需要下载下面的mysql-connector-python ...

  9. Python连接msyql、redis学习_Day12

    一.数据库 关系型数据库(RDBMS): 1.数据以表格的形式出现2.每行为各种记录名称3.每列为记录名称所对应的数据域4.许多的行和列组成一张表单5.若干的表单组成database 1.MySQL基 ...

随机推荐

  1. WPF常见内存泄露

    Event handlers leak This type of leak occurs when subscribing an object (let's call it listener) to ...

  2. WPF Textblock Run 空白问题

    消除Run之前的空白是将Run标签布局时头尾相连 如: <TextBlock > <Run Text="A"></Run> <Run Te ...

  3. Ruby已经慢慢走向衰退了,那些年代久远而且小众的语言没有翻身的可能性

    Ruby已经慢慢走向衰退了,现在WEB开发里,NODE.JS+前端各种框架是主流,PHP.ruby.Asp.net.python等语言在网站编程方面只会越来越少.数据领域方面,机器学习和人工智能中,p ...

  4. Delphi编写系统服务:完成端口演示

    在开发大量Socket并发服务器,完成端口加重叠I/O是迄今为止最好的一种解决方案,下面是简单的介绍:   “完成端口”模型是迄今为止最为复杂的一种I/O模型,特别适合需要同时管理为数众多的套接字,采 ...

  5. Elasticsearch ML

    Elastic公司在收购了Prelert半年之后,终于在Elasticsearch 5中推出了Machine Learning功能.Prelert本身就擅长做时序性数据的异常检测,从这点上讲也比较契合 ...

  6. select Demo

    #include <iostream> #include <WinSock2.h> using namespace std; #pragma comment(lib, &quo ...

  7. 30+ 强大的Buddypress主题–开始您的社区站点吧

    BuddyPress起源于2008年,当时设计者设想添加社交网络功能到WordPress多用户版本中.第一个正式稳定版本的发布是在2009年的5月.自从那时起.BuddyPress开始快速的成长和演变 ...

  8. 使用熔断器仪表盘监控(hystrix)

    概述 在 Ribbon 和 Feign 项目增加 Hystrix 仪表盘功能,两个项目的改造方式相同. 在 pom.xml 中增加依赖 <dependency> <groupId&g ...

  9. 使用Scrapy爬取图片入库,并保存在本地

    使用Scrapy爬取图片入库,并保存在本地 上 篇博客已经简单的介绍了爬取数据流程,现在让我们继续学习scrapy 目标: 爬取爱卡汽车标题,价格以及图片存入数据库,并存图到本地 好了不多说,让我们实 ...

  10. 通往Google之路:***

    *** & BBR 安装 系统支持:CentOS 6+, Debian 7+, Ubuntu 12+ 内存要求:≥128M --- 前提 满足以上要求的VPS服务器一台 安装基础命令工具:yu ...