psycopg

windows anaconda python3.7 import ssl,psycopg2报错

半腔热情 提交于 2020-05-04 03:39:58
使用anaconda,本来是为了减少装第三方模块依赖出错问题的。 但是,今天发现,也是有坑啊。 首先 import ssl 报错, import _ssl 说DLL load failed 解决办法:用官方的python zip文件包的 _ssl.pyd 替换anaconda中的 _ssl.pyd 文件 1.在anaconda 安装目录找到DLLs/_ssl.pyd文件,改名为_ssl.pyd_bk,作为本分,以防不测。如果是使用了虚拟环境,也要将env中的虚拟环境中的_ssl.pyd替换 2.查看本机的python具体版本,并在 Python的官网 中下载相对应的版本的Python ZIP文件 3.解压,获取zip文件中的_ssl.pyd,并放在相应的anaconda 安装目录(就是_ssl.pyd_bk的目录) 4.import 测试 参考:http://www.pianshen.com/article/6230302890/ 然后接着是 psycopg2 的报错, 我之前的项目是使用pg数据库的,今天在新电脑clone了代码,跑的时候发现没有 psycopg2 想当然的使用conda install psycopg2 了 安装后接着跑代码,发现。。。 网上说换一个编译版,but,已经打不开他们说的网站了。找了一大通无果, 烦躁的我直接 conda uninstall

Serverless 解惑——函数计算如何访问 PostgreSQL 数据库

送分小仙女□ 提交于 2020-04-26 12:23:36
函数计算(Function Compute) : 函数计算 是事件驱动的全托管计算服务。使用函数计算,您无需采购与管理服务器等基础设施,只需编写并上传代码。函数计算为您准备好计算资源,弹性地可靠地运行任务,并提供日志查询、性能监控和报警等功能。借助函数计算,您可以快速构建任何类型的应用和服务,并且只需为任务实际消耗的资源付费。 访问 PostgreSQL 数据库是指在函数计算中通过编写代码调用数据库驱动库通过 TCP 协议实现对数据库进行的插入、查询等操作。通常函数计算中运行的不同函数实例之间是不共享状态的,对于结构化的数据可以通过数据库的形式进行持久化以实现状态共享。由于用户函数运行在函数计算的 VPC 中,而用户的数据库运行在用户所属的 VPC 中,所以在函数计算平台访问数据库会涉及到跨 VPC 访问的场景,下面我们先来介绍一下其工作机制。 工作机制 访问 PostgreSQL 的原理、工作机制与访问 Mysql 数据库完全相同,本文不再重复阐述,更详细的内容请参考 访问 Mysql 数据库 中的工作机制章节。 配置与函数编写 公共配置 创建专有网络VPC 登录 VPC控制台 。 参阅 VPC 搭建专有网络 创建VPC和交换机。 创建安全组 在 安全组控制台 新建安全组,点击 创建安全组 ,设置安全组名称,网络类型选择 专有网络 ,并选择刚才创建的专有网络。 注意

蟒周刊-411-2020 应该如何享用 Jupyter?

浪子不回头ぞ 提交于 2020-03-12 21:18:46
原文: PyCoder's Weekly - Issue #411 200311 Zoom.Quiet (大妈) 用时 42 分钟 完成快译 200311 Zoom.Quiet (大妈) 用时 17 分钟 完成格式转抄. Post-Mortem Python 绘图 ANDY JONES Who loves debugging things that only fail occasionally? Just me? Maybe you need to check out Andy Jones’ extract() function that “magically” extracts a caller’s environment into an IPython interpreter session. Mix in a little post-mortem debugging with Jupyter’s %debug magic command, and you’ll be painlessly debugging finicky code in no time. ( 是也乎: 神奇的事后验尸, extract() 能将调用者环境装配人 Jupyter 进行细致的检验. ) 2020 年如何用 Jupyter 笔记本 LJ MIRANDA In this first of a

Python连接mysql或postgres(sqlalchemy)

拟墨画扇 提交于 2020-02-29 10:26:24
安装 sudo pip install sqlalchemy 或sudo pip3 install sqlalchemy 下载速度慢可使用国内源,如: sudo pip install sqlalchemy -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com 测试1 from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker eng = create_engine('mysql+mysqlconnector://y-user:y-passwd@127.0.0.1:3306/y-db?charset=utf8') #eng = create_engine('postgresql+psycopg2://y-user:y-passwd@127.0.0.1:5432/y-db',echo=True,client_encoding='utf8') DB_Session = sessionmaker(bind=eng) session = DB_Session() data = session.execute("SELECT * FROM y-table") for row in data: for

如何在Python上使用“ pip”安装psycopg2?

巧了我就是萌 提交于 2020-02-27 23:52:50
我正在使用 virtualenv ,需要安装“ psycopg2”。 我已经完成以下工作: pip install http://pypi.python.org/packages/source/p/psycopg2/psycopg2-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160 我有以下消息: Downloading/unpacking http://pypi.python.org/packages/source/p/psycopg2/psycopg2 -2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160 Downloading psycopg2-2.4.tar.gz (607Kb): 607Kb downloaded Running setup.py egg_info for package from http://pypi.python.org/packages/sou rce/p/psycopg2/psycopg2-2.4.tar.gz#md5=24f4368e2cfdc1a2b03282ddda814160 Error: pg_config executable not found. Please add the directory containing pg_config to

TypeError: 'dict' object does not support indexing thrown on second instance of this query

孤者浪人 提交于 2020-01-14 09:52:06
问题 So I am building a query based on user input in flask with this code: if empty_indic_form.validate_on_submit(): query='select name, year, value, display_name from literal inner join ent on ent_id=ent.id where display_name in (' for i in indic_form.indicators.data: query=query+'\''+i+'\',' query=query[:-1]+') ' query=query+'and name in (' for c in order_c: query=query+c+',' query=query[:-1]+')' data_return=db.engine.execute(query).fetchall() I have confirmed that query looks like what it is

prepared statements using psycopg

对着背影说爱祢 提交于 2019-12-23 15:09:13
问题 I'm a beginner at python. We use this code to execute SQL commands. cur.execute("INSERT INTO test (num, data) VALUES (%s, %s)", (100, "abcdef")) I wonder is this prepared statement or just a client side quoting? 回答1: No, it does not, not for psycopg2 at least. The "Prepare" in the docs refers to a "PREPARE TRANSACTION" which is entirely different than a prepared statement. You can emulate a prepared statement, by overriding the methods or executing extra statements, however. See: An example

psycopg2 + pgbouncer. Async mode with gevent error

試著忘記壹切 提交于 2019-12-21 21:26:43
问题 I've got an application psycopg2 + pgbouncer + gevent. Asynchronous application, ie one process serves multiple requests. Asynchronous access to database appeared in the latest version of psycopg2, if rather then 2.2. But just in this release introduces bug for which there is a lot of disconnections from pgbouncer. In the pgbouncer logs there are entries: 2011-10-04 12:16:38.972 4590 LOG C-0x1b3f490: database/user@10.58.65.143:43849 login successful: db=database user=user 2011-10-04 12:16:38

Python-PostgreSQL psycopg2 interface --> executemany

时光总嘲笑我的痴心妄想 提交于 2019-12-21 04:39:35
问题 I am currently analyzing a wikipedia dump file; I am extracting a bunch of data from it using python and persisting it into a PostgreSQL db. I am always trying to make things go faster for this file is huge (18GB). In order to interface with PostgreSQL, I am using psycopg2, but this module seems to mimic many other such DBAPIs. Anyway, I have a question concerning cursor.executemany(command, values); it seems to me like executing an executemany once every 1000 values or so is better than

python操作postgresql

不想你离开。 提交于 2019-12-20 22:25:22
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> import psycopg2 #创建连接对象 conn=psycopg2.connect(database="postgres",user="postgres",password="123456",host="localhost",port="5432") cur=conn.cursor() #创建指针对象 # 创建表 cur.execute("CREATE TABLE student(id integer,name varchar,sex varchar);") #插入数据 cur.execute("INSERT INTO student(id,name,sex)VALUES(%s,%s,%s)",(1,'Aspirin','M')) cur.execute("INSERT INTO student(id,name,sex)VALUES(%s,%s,%s)",(2,'Taxol','F')) cur.execute("INSERT INTO student(id,name,sex)VALUES(%s,%s,%s)",(3,'Dixheral','M')) # 获取结果 cur.execute('SELECT * FROM student') results=cur.fetchall() print