通过PostgreSQL中的命令执行文件(exe)?

时间:2015-11-16 12:47:12

标签: postgresql

我需要PostgreSQL运行保存到表中bytea字段的.jar文件。在任何给定时间调用一个函数,然后必须以与双击文件相同的方式打开.jar文件。

这可能吗?

1 个答案:

答案 0 :(得分:0)

如果要在客户端上运行jar,则无法从PostgreSQL服务器执行此操作。

您可以使用在客户端上运行的Java包装应用程序来执行此操作。它会:

这不会很简单。如果您不介意将jar保存到临时文件中,可以使它更简单:

  • 连接到PostgreSQL
  • 查询数据库以获取jar的bytea
  • 将jar数据保存到临时文件
  • 运行javaw.exe \path\to\temp\file以通过外部流程启动运行jar,例如ProcessBuilder

您可以使用PostgreSQL驱动程序以任何语言执行此操作。

如果您甚至无法安装PostgreSQL驱动程序,您可以编写一个小的C可执行文件并将其与libpq捆绑在一起执行此操作。或者甚至编写一个Powershell脚本,通过运行psql来完成它。