我正在尝试运行alembic
迁移,当我运行时
alembic revision --autogenerate -m "Added initial tables"
Run Code Online (Sandbox Code Playgroud)
它说不出来
sqlalchemy.exc.ArgumentError: Can't load plugin: sqlalchemy.dialects:driver
Run Code Online (Sandbox Code Playgroud)
数据库网址是
postgresql+psycopg2://dev:passwd@localhost/db
Run Code Online (Sandbox Code Playgroud)
我甚至psycopg2
安装在我的virtualenv中
$yolk -l
Flask-Login - 0.1.3 - active
Flask-SQLAlchemy - 0.16 - active
Flask - 0.9 - active
Jinja2 - 2.6 - active
Mako - 0.7.3 - active
MarkupSafe - 0.15 - active
Python - 2.7.2 - active development (/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload)
SQLAlchemy - 0.8.0 - active
Werkzeug - 0.8.3 - active
alembic - 0.4.2 - active
antiorm - 1.1.1 - active …
Run Code Online (Sandbox Code Playgroud) 将带有许多键的python字典插入Postgres数据库而不必枚举所有键的最佳方法是什么?
我想做点什么......
song = dict()
song['title'] = 'song 1'
song['artist'] = 'artist 1'
...
cursor.execute('INSERT INTO song_table (song.keys()) VALUES (song)')
Run Code Online (Sandbox Code Playgroud) 我第一次尝试与其他几个网站建立网站,并且在尝试使用Django/Python/VirtualEnv时遇到了一个奇怪的错误.我已经为其他操作系统找到了解决这个问题的方法,比如Ubuntu,但是找不到适合Mac的好解决方案.
这是正在运行的相关代码:
virtualenv -p python3 venv
source venv/bin/activate
pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)
运行该块后,我收到以下错误:
Asse田
django-toolbelt的构建轮失败为psycopg2运行setup.py bdist_wheel
...
Asse田
psycopg2构建轮失败无法构建django-toolbelt psycopg2
我相信我已经安装了"django-toolbelt"和"psycopg2",所以我不确定它为什么会失败.
我能想到的唯一区别是我没有使用该命令
sudo apt-get install libpq-dev
Run Code Online (Sandbox Code Playgroud)
正如Ubuntu用法的指示,因为我相信用brew安装postgresql会处理标题.
感谢您的帮助或见解!
每次我写
import psycopg2
Run Code Online (Sandbox Code Playgroud)
我想知道为什么它被称为psycopy2,因为我总是忘记真正的拼写?有没有什么历史是我可以知道的,以便我能清楚地记得它?
我在virtualenv中安装了psycopg2 easy_install psycopg2
.我没有看到任何错误,看起来安装很顺利..有一个鸡蛋文件在site-packages目录中为psycopg2创建..
但是当我在解释器中运行import psycopg2时,我得到了以下错误..任何线索?我该如何解决..在virtualenv中安装psycopg2的任何其他方法..
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "build\bdist.win32\egg\psycopg2\__init__.py", line 69, in <module>
File "build\bdist.win32\egg\psycopg2\_psycopg.py", line 7, in <module>
File "build\bdist.win32\egg\psycopg2\_psycopg.py", line 6, in __bootstrap__
Run Code Online (Sandbox Code Playgroud)
谢谢.
我在Python中使用psycopg2将一些值传递给postgres字符字段.一些字符串值包含句点,斜杠,引号等.
使用MySQL我只是逃避字符串
MySQLdb.escape_string(my_string)
Run Code Online (Sandbox Code Playgroud)
是否有psycopg2的等价物?
我正在编译psycopg2并得到以下错误: Python.h:没有这样的文件或目录
如何编译它,Ubuntu12 x64.
我正在尝试在CentOS上安装psycopg2,我在本教程中遵循了"On with it:安装Python 2.6"一直到它导入psycopg2的时候,但是当我尝试导入时,我得到以下错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/opt/python2.6/lib/python2.6/site-packages/psycopg2/__init__.py", line 69, in <module>
from _psycopg import BINARY, NUMBER, STRING, DATETIME, ROWID
ImportError: libpq.so.5: cannot open shared object file: No such file or directory
Run Code Online (Sandbox Code Playgroud)
如何解决这个问题?
我有一个带有PointField属性的地理模型.一切都在本地完美,但当我尝试在服务器上保存实例时,我收到以下错误:
django.db.utils.DatabaseError: invalid byte sequence for encoding "UTF8": 0x00
Run Code Online (Sandbox Code Playgroud)
我挖掘了源代码,发现值的序列化方式不同; 具体而言,在服务器上执行查询之前,该值未被转义.它似乎正在进行转义psycopg2.Binary.getquoted()
,当然,它不会在服务器上返回正确的值.
在我的机器上:
from psycopg2 import Binary
Binary('\0').getquoted() # > "'\\\\000'::bytea"
Run Code Online (Sandbox Code Playgroud)
在服务器上:
from psycopg2 import Binary
Binary('\0').getquoted() # > "'\\000'::bytea"
Run Code Online (Sandbox Code Playgroud)
好的,这解释了为什么它认为我试图插入一个空字节.(因为我.)所以现在我已经足够了解Jonathan S.在django-users组中找到类似的报告会出现什么问题但是,就像Jonathan一样,我不知道这是错误还是配置错误.
有人能指出我正确的方向吗?
以下是有关设置的一些信息:
My computer Server
OS OSX 10.7 CentOS 5.5
Python 2.7 2.6
Django 1.3 1.3
Postgres 9.0.4 9.9.1
postgis 1.5.2 1.5.3-2.rhel5
geos 3.3.0 3.3.0-1.rhel5
Run Code Online (Sandbox Code Playgroud) 我有一个很大的问题:我的python软件运行在服务器的路由器上似乎存在一些硬件问题.仅与数据库的连接大约每三次成功一次.所以psycopg2.connect()最多可能需要5分钟才能收到超时异常.
2014-12-23 15:03:12,461 - ERROR - could not connect to server: Connection timed out
Is the server running on host "172.20.19.1" and accepting
Run Code Online (Sandbox Code Playgroud)
那是我正在使用的代码.
# Connection to the DB
try:
db = psycopg2.connect(host=dhost, database=ddatabase,
user=duser, password=dpassword)
cursor = db.cursor(cursor_factory=psycopg2.extras.DictCursor)
except psycopg2.DatabaseError, err:
print(str(err))
logging.error(str(err))
logging.info('program terminated')
sys.exit(1)
Run Code Online (Sandbox Code Playgroud)
我为查询尝试了一些超时添加,但这没有帮助,因为连接根本没有建立.
有没有办法,当无法建立连接时,我可以立即停止程序吗?
psycopg2 ×10
postgresql ×7
python ×7
django ×2
virtualenv ×2
alembic ×1
centos ×1
connection ×1
easy-install ×1
geodjango ×1
installation ×1
postgis ×1
sql ×1
sqlalchemy ×1
timeout ×1