0

有没有办法从 Sublime Text 2 中编译 pl/psql 函数?

4

3 回答 3

1

使用此命令添加新的构建系统文件并保存。

{
"cmd": ["psql", "-d", "your-database name",
"-U", "postgres", 
"-f", "$file"],
"word_wrap": "false"
}
于 2018-02-28T12:55:53.880 回答
0

是的你可以。为了使此答案起作用,您的网络用户必须有权访问数据库。这样做的方法是在 Sublime 中为 postgresql 创建一个新的构建系统。您可以通过单击 Tools>Build System>New Build System... 来执行此操作,然后将默认构建文本替换为:

{
  "path": "C:/Program Files (x86)/pgAdmin III/1.20/",
  "cmd": ["psql.exe", "-f", "$file", "postgresql://db-staging-1:5432/mydbname"],
  "selector": "source.postgresql",
  "shell": true
}

路径: 这应该是您的 psql.exe 可执行文件的位置。请注意,如果此路径在您的环境变量路径中,则此行是不必要的。

CMD:这将从命令行运行。我也在这里包含了我的连接信息。您需要将其替换为数据库的服务器路径和端口号。请注意,如果您在运行构建时遇到问题,调试它实际尝试运行的内容的最简单方法是在此行的前面添加 echo:

 "cmd": ["echo", "psql.exe", "-f", "$file", "postgresql://db-staging-1:5432/mydbname"],

现在,您构建的输出将正是它试图在命令行上运行的内容。如果它在此处输出的内容在您的命令行上不起作用,那么您需要将其更改为可以使用的内容。

选择器:这设置了 postgresql 文件的默认构建。

Shell:将命令视为 shell 脚本。

现在您可以在 Tools>Build System 下选择您的构建为 postgresql。之后,一个简单的 Ctrl+B 会将 pl/pgsql 函数编译到您的数据库中!请注意,现在也可以针对您的 Postgresql 数据库运行常规 SQL。

如果您经常一次与多个数据库进行交互,请参阅这篇文章作为设置与多个数据库的连接的良好参考: How to make build system for PostgreSQL

其他 Sublime 文本构建选项可以在这里找到:http ://sublimetext.info/docs/en/reference/build_systems.html

于 2015-10-29T19:32:51.097 回答
0

实际上,我刚刚发布了一个插件(称为DB1),它允许您这样做。您可以动态连接到 PostgreSQL 或 MySQL 数据库并对其执行查询和函数(我也在添加更多数据库)。关于它的一个很酷的部分是它不需要您在计算机上安装任何东西(除了 Sublime Text)。

您所要做的就是通过 Package Control安装 DB1,然后在视图中运行命令DB1: Connect以连接到您的数据库。然后,您可以通过其中一个DB1: Execute命令在该视图中执行 sql。

您也可以只打开 PSQL 函数(如果将其保存在文件中)并执行整个文件。

要了解它是如何工作的,您可以查看DB1 网站文档。如果您对此有任何疑问,请告诉我!

于 2015-10-30T16:09:43.150 回答