使用数据库 CLI 工具
几乎每个数据库供应商都有自己的命令行界面 (CLI) 工具。 以下列表向您展示了一些示例。
PostgreSQL:
psqlOracle:
sqlplus(SQL*Plus 的 SQL 命令行)MySQL:
mysqlMicrosoft SQL Server:
sqlcmdSQLite:
sqlite3
要在 GoLand 中使用这些工具,需要 将其添加为外部工具。 有关如何使用外部工具的更多信息,请参阅 外部工具 主题。
在大多数情况下,这些工具支持两种类型的命令:标准命令和元命令。 标准命令包括 SELECT、 CREATE、 UPDATE 以及其他普通的 SQL 命令。 元命令使用每个工具特定的特殊语法。 例如,在 SQLite 中,除了普通的 SQL 语句,您还可以使用点命令。 这些点命令用于更改查询的输出格式或执行某些预定义的查询语句。 当您发出点命令时, sqlite3 会根据其自身对命令的解释并在数据库上运行它。
其他工具有不同的元命令。 例如, sqlplus 有 DESCRIBE; psql 有类似 \dD 的反斜杠指令;在 sqlcmd 中,您可以使用 :r Script.sql 加载脚本文件。 这些命令不是您的数据库可以轻松理解的标准 SQL 命令。 它们需要被翻译。 CLI 工具会执行这种翻译。
GoLand 支持元命令的语法高亮,但不支持翻译逻辑。 这意味着您可以在编辑器中打开带有元命令的 SQL 脚本,但需要外部工具来运行该脚本。 默认情况下,元命令以绿色高亮显示。


运行 CLI 工具
在本主题中,我们以 sqlite3 和 psql 为例。 您可以为其他工具创建类似的配置。
本教程中, sqlite.db 数据库文件用于 sqlite3 ,而本地运行的 PostgreSQL 数据库用于 psql。 我们将在 SQL 文件中使用以下脚本:
script_sqlite3.sql
script_psql.sql
要运行该脚本,需要为第三方工具创建配置。 在我们的情况下, sqlite3 或 psql。 此配置将把项目中的上下文信息作为命令行实参传递给工具,并在 运行 工具窗口中显示输出。
步骤 1。 创建外部工具配置
按 Ctrl+Alt+S 打开设置并导航到 。
点击
添加 并指定以下设置:
名称 :将在 GoLand 界面中显示的工具名称。 例如,
sqlite3。组 :工具所属的组的名称。 您可以选择一个现有组或输入新组的名称。
描述 :工具的有意义描述。 例如,
Command-line tool for SQLite。程序 :应用程序可执行文件的路径。 例如, ~/files/sqlite/sqlite3 。
参数 :传递给可执行文件的参数,就像您在命令行中指定它们一样。
工作目录 :从执行工具的当前工作目录的路径。 例如,您可以将此字段指向包含数据库文件的文件夹( ~/files/sqlite )。

在此情况下,
sqlite3将使用sqlite.db ".read '$FilePath$'"实参运行。名称 :将在 GoLand 界面中显示的工具名称。 例如,
psql。组 :工具所属的组的名称。 您可以选择一个现有组或输入新组的名称。
描述 :工具的有意义描述。 例如,
Command-line tool for PostgreSQL。程序 :应用程序可执行文件的路径。 例如, /Library/PostgreSQL/bin/psql 。
参数 :传递给可执行文件的参数,就像您在命令行中指定它们一样。
工作目录 :从执行工具的当前工作目录的路径。 例如, /Library/PostgreSQL/bin 。

在此情况下,
psql将使用-h localhost -p 54333 -U guest -d guest -f "$FilePath$"实参运行。您可以使用可以引用项目名称、当前文件路径等的宏。 点击
插入宏… 会打开 宏 对话框,列出所有可用宏及其值。
点击 确定 添加工具,然后应用更改。
步骤 2。 运行创建的配置
双击脚本文件以在编辑器中打开它。
按 Ctrl+Shift+A ,开始输入
外部工具,然后从列表中选择该操作。 按 Ctrl+Shift+A 打开 Search Everywhere 弹出窗口,开始输入外部工具,然后从列表中选择它。通过点击主窗口工具栏上的
项目 打开 项目 工具窗口。 或者按 Alt+1。
在 设置 对话框(Ctrl+Alt+S )中,选择 键位图。
GoLand 在 运行 工具窗口中显示输出。







