问题描述
我不明白为什么我不能运行sqlacodegen.我希望将其用于从现有PostgreSQL数据库创建SQLAlchemy模型.它不会运行.
I'm not understanding why I can't run sqlacodegen. I'm looking to use it for create a SQLAlchemy model from my existing PostgreSQL database. It won't run.
当我键入sqlacodegen --help
寻求帮助时,会得到:
When I type sqlacodegen --help
for help I get:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: bad operand type for unary -: '_Helper'
基本说明位于此处.
推荐答案
这是因为您是在Python shell中完成的:
It is because you did this in Python shell:
>>> import sqlacodegen
>>> sqlacodegen --help
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: bad operand type for unary -: '_Helper'
您应该已经在 Unix命令shell/Windows命令提示符中执行了sqlacodegen --help
:
You should have executed sqlacodegen --help
in your Unix command shell / Windows command prompt:
% sqlacodegen --help
usage: sqlacodegen [-h] [--version] [--schema SCHEMA] [--tables TABLES]
[--noviews] [--noindexes] [--noconstraints] [--nojoined]
[--noinflect] [--outfile OUTFILE]
[url]
Generates SQLAlchemy model code from an existing database.
positional arguments:
url SQLAlchemy url to the database
optional arguments:
-h, --help show this help message and exit
--version print the version number and exit
--schema SCHEMA load tables from an alternate schema
--tables TABLES tables to process (comma-separated, default: all)
--noviews ignore views
--noindexes ignore indexes
--noconstraints ignore constraints
--nojoined don't autodetect joined table inheritance
--noinflect don't try to convert tables names to singular form
--outfile OUTFILE file to write output to (default: stdout)
然后是实际命令的示例:
An example of the actual command would then be:
% sqlacodegen --outfile models.py \
postgresql://gollyjer:swordfish@localhost:5432/mydatabase
其中gollyjer:swordfish
是您的凭据,格式为user:password
.
Where gollyjer:swordfish
are your credentials in the format user:password
.
这篇关于如何运行sqlacodegen?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!