以postgres超级用户身份连接到现有的PostgreSQL集群并执行SQL命令。

pgsu的Python项目详细描述


Build StatusCoverage StatusPyPI versionGitHub license

pgsu公司

作为PostgreSQLSUPERUSER连接到现有的PostgreSQL集群并执行SQL命令。在

一旦为给定数据库提供了连接参数,^{}有一个很好的与PostgreSQL交互的API。 但是,如果您想要的数据库和数据库用户还不存在呢? 为了创建它们,您需要以超级用户身份连接到PostgreSQL。在

特点

  • 自动检测postgres安装程序,测试时间
  • 如果可能,使用psycopg2连接
  • 如果需要/可能,可以使用sudo成为postgresUNIX用户(默认的Ubuntu PostgreSQL设置)

使用

Python API

frompgsuimportPGSUpgsu=PGSU()# On Ubuntu, this may prompt for sudo passwordpgsu.execute("CREATE USER newuser WITH PASSWORD 'newpassword'")users=pgsu.execute("SELECT usename FROM pg_user WHERE usename='newuser'")print(users)

虽然该包的主要内容是guess如何作为postgres超级用户进行连接,但您也可以使用dsn参数提供有关设置的部分或全部信息。 以下是默认设置:

^{pr2}$

命令行工具

该软件包还附带了一个非常基本的pgsu命令行工具,允许用户以超级用户的身份执行PostgreSQL命令:

$ pgsu "SELECT usename FROM pg_user"
Trying to connect to PostgreSQL...
Executing query: SELECT usename FROM pg_user
[('aiida_qs_leopold',),
 ('postgres',)]

测试

按以下步骤运行测试:

pip install -e .[testing]
pytest

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在验证检查中改进构建器模式?   java如何定义一个依赖项来获取快照?   java Javafx webview在运行时不显示dashplotly应用程序   java Android kotlin单元测试用例。。?   java Android:SurfaceView,为什么要使用不同的线程   Android/Java“org.apache.http.ProtocolException”,http头应答有问题   反射如何确定类成员是否是静态的以及Java中的字段   java设置EditText以接受双值的问题   类加载器如何使用类加载器将jar从我的网站加载到java应用程序的脚本中   java GWT HTMLTable colaspan功能   java无法删除/重命名文件   java Navigableset vs Navigablemap   php中java加密方法的转换   java为什么加载我的共享对象文件会在Netbeans 8.2中出现“未满足链接”错误?   java JAXRS CXF异常包装   java程序在If语句之后执行Else语句   java将对象转换为JAXBElement<Object>