1

当我必须运行数据库迁移脚本时,我往往会产生很大程度的妄想症,而不是dbcli < migration.sql. 相反,我更喜欢一次运行一个命令。到目前为止,我一直在使用痛苦的复制/粘贴。

必须有一个可以做这种事情的工具,但我很难找到一个使用谷歌、维基百科或 StackOverflow 的工具(关闭没有雪茄)。

这绝对是我可以自己写的东西,但它必须已经存在,不是吗?

这确实需要是可以从命令行运行并具有一点交互性的东西(例如显示将要执行的语句,让您按例如 ENTER 来执行它,然后显示输出(如果有))因为服务器通常没有任何可用的 GUI。

我的特定数据库目标是 MySQL,但不需要这样的工具是特定于数据库的。

更新

同时,我正在用 Java 编写一个实用程序来做我想做的事。

4

5 回答 5

1

只要它以分号结尾,Oracle SQL Developer 就会一次运行一行。

您可以使用其他驱动程序连接到某些第 3 方数据库 ( http://www.oracle.com/technetwork/products/migration/omwb-getstarted-093461.html )

于 2013-09-29T17:06:57.537 回答
0

Emacs 的 SQL 模式支持逐行、逐区、逐文件发送。

当然,您必须学习 emacs,但它确实可以满足您的需求。

于 2013-09-29T17:00:43.247 回答
0

你可以试试dbForge。有一个免费的 Express Edition,但我无法从功能比较列表中完全判断它是否允许您逐步执行任意 SQL 脚本。

于 2013-01-09T22:12:48.407 回答
0

Flyway Teams Edition(商业许可)还支持在Stream parameter下一一执行语句。这不是您问题的确切答案,但它至少可以为您提供有关现有工具的信息。

于 2021-05-11T13:08:14.837 回答
0

很久以前,我为此编写了自己的工具,并且随着时间的推移一直在使用和完善它。随意使用它并提供功能建议等。

于 2018-07-21T21:22:40.057 回答