psycopg2相关内容

服务器端游标的 Psycopg2 行数

我正在查询 Postgres 数据库以获取大量结果,并希望使用服务器端游标将结果流式传输到我的客户端.看起来当我这样做时,游标的 rowcount 属性现在在我执行查询后设置为 -1.我正在像这样创建光标: 以 db.cursor('cursor_name') 作为游标: 有没有办法在从数据库流式传输结果时找到查询的结果数量?(我可以做一个 SELECT COUNT(*),但我想避免这 ..
发布时间:2021-06-18 20:53:18 Python

python + psycopg2 = 未知类型?

似乎当我使用 callproc() 时,psycopg2 没有正确地将字符串转换为文本或字符变化. 例如: values = [pid, 4, 4, 'bureau ama', 0, 130, row['report_dte'], row['report_dte'], 1, 1, 1, None, None, 'published', 行['report_dte']]cur.callpro ..
发布时间:2021-06-18 20:51:19 Python

如何在 psycopg2 连接方法中指定 Schema?

使用 psycopg2 模块通过 python 连接到 PostgreSQL 数据库.我可以使用以下连接方法执行所有查询.现在我想指定一个不同的模式而不是 public 来执行我的 SQL 语句.有没有办法在连接方法中指定schema名称? conn = psycopg2.connect(host="localhost",端口=“5432",用户 =“postgres",密码=“密码",数据库= ..
发布时间:2021-06-18 20:50:23 Python

连接后psycopg2找不到任何表

我可以连接到我的数据库,但是 psycopg2 无法找到我的任何表.尝试获取我的用户时会出现以下错误: 导入psycopg2尝试:conn = psycopg2.connect("dbname='pdb' user='postgres' host='localhost' password='password'")除了:打印“连接失败"cur = conn.cursor()cur.execute( ..
发布时间:2021-06-18 20:49:35 Python

TimescaleDB:高效选择最后一行

我有一个带有 timescaledb 扩展名的 postgres 数据库. 我的主索引是一个时间戳,我想选择最新的行. 如果我碰巧知道在某个时间之后发生的最新行,那么我可以使用如下查询: query = 'select * from price where time >%(dt)s' 这里我指定了一个日期时间,并使用 psycopg2 执行查询: # 2018-01-10 11: ..
发布时间:2021-06-18 20:49:18 其他开发

Psycopg2 查询返回 Decimal('value')

我在 Python 中查询 postgresql 数据库(通过 psycopg2).我的代码将值返回为 Decimal('VALUE').有没有办法在数据库中转换它?代码示例: query = "SELECT id FROM table;"cur.execute(查询)结果 = cur.fetchall()# Results = Decimal('某个值') 有没有办法把它转换成只显示没有“D ..
发布时间:2021-06-18 20:49:14 Python

psycopg2:DictCursor 与 RealDictCursor

AFAIU 和文档中的 RealDictCursor 是一个专门的 DictCursor,它只能从键(又名列名)访问列,而 DictCursor 可以从键或索引号访问数据. 我想知道如果 DictCursor 提供了更大的灵活性,为什么要实现 RealDictCursor?它在性能方面(或内存方面)是否如此不同(我认为有利于 RealDictCursor ......)? 换句话说,什么是 R ..
发布时间:2021-06-18 20:48:09 Python

获取 OperationalError: FATAL: 抱歉,已经有太多客户在使用 psycopg2

我收到错误 OperationalError: FATAL: 抱歉,使用 psycopg2 时已经有太多客户端了.完成后,我在我的连接实例上调用 close 方法.我不确定是什么原因造成的,这是我第一次使用 python 和 postgresql,但我有几年使用 php、asp.net、mysql 和 sql server 的经验. 编辑:我在本地运行它,如果连接像它们应该的那样关闭,那么我 ..
发布时间:2021-06-18 20:44:34 Python

无法安装 psycopg2 Ubuntu

试图为 django 项目准备一个服务器,但我在设置 postgres 时遇到了一些问题. 我正在遵循本指南:https://jee-appy.blogspot.com/2017/01/deply-django-with-nginx.html 我在第 5 步: 现在,我们需要配置 postgreSQL,以便它可以与我们的 Django 应用程序进行通信.为此,安装 psycopg ..
发布时间:2021-06-18 20:41:43 Python

为什么我只能使用一次查询结果?

我是 SQL 和 psycopg2 的新手.我玩了一会儿,试图找到我们如何显示查询结果.我有一个小脚本,用于连接到数据库并创建一个游标来运行查询. from psycopg2 import connectconn = connect(host="localhost", user="postgres", dbname="portfolio",密码=“空")cur = conn.cursor()cu ..
发布时间:2021-06-18 20:38:51 Python

如何使用 Python/psycopg2 有效地更新大型 PostgreSQL 表中的列?

我有一张大桌子,上面放着大约.PostgreSQL 9.4 数据库中有 1000 万行.它看起来有点像这样: gid |编号 1 |随机 |结果|...1 |2 |空 |空 |...2 |15 |空 |空 |...... |... |... |... |... 现在我想将 random 和 result 列更新为 number1 的函数.这意味着至少需要在数据库外的脚本中生成 random.由 ..
发布时间:2021-06-18 20:37:14 Python

psycopg2 使用列名而不是列号来获取行数据

所以目前当我执行 SELECT 查询并检索数据时,我必须得到这样的结果: connection = psycopg2.connect(user="admin",密码=“管理员",主机="127.0.0.1",端口=“5432",数据库=“postgres_db")游标 = connection.cursor()cursor.execute("SELECT * FROM user")用户 = cu ..
发布时间:2021-06-18 20:36:18 Python

在 psycopg2 中构建动态更新查询

我必须为 postgresql 构建一个动态更新查询.它是动态的,因为我必须事先确定要更新哪些列. 给定一个示例表: create table foo (id int, a int, b int, c int) 然后我会以编程方式构造“set"子句 _set = {}_set['a'] = 10_set['c'] = NULL 之后我必须构建更新查询.我被困在这里.我必须构造这个 s ..
发布时间:2021-06-18 20:33:34 Python

psycopg2:使用元组元组中的值更新表中的多行

我正在尝试使用元组元组一次更新多行.我想出了如何从 这篇文章 构建 sql 语句,但事实证明,在 psycopg2 中实现它更具挑战性.这是我所拥有的: c = db.cursor()new_values = (("Richard",29),("Ronald",30))sql = """UPDATE my_table AS tSET 名称 = e.nameFROM (VALUES %s) AS ..
发布时间:2021-06-18 20:33:22 Python