【问题标题】:prevent execution after any given line in sql script防止在 sql 脚本中的任何给定行之后执行
【发布时间】:2016-07-01 11:11:38
【问题描述】:

当我需要执行部分 SQL 脚本时,我会用 /**/ 注释我不想运行的行。当被注释的脚本包含 cmets 本身时,这将无法正常工作。是否有一个神奇的命令可以放在行之间以防止接下来执行什么?

SQL 脚本:

SELECT ColumnA FROM TableA;
SELECT ColumnB FROM TableB;
SELECT ColumnC FROM TableC;

我的解决方法:

SELECT ColumnA FROM TableA;
/*SELECT ColumnB FROM TableB;
SELECT ColumnC FROM TableC;*/

期望的行为:

SELECT ColumnA FROM TableA;
DONTEXECUTEAFTERTHISLINE;
SELECT ColumnB FROM TableB;
SELECT ColumnC FROM TableC;

【问题讨论】:

  • 你可能想看看KILL
  • 您是否手动运行。或者是否有一些可以通过代码做出的决定。另外,如果您手动执行此操作,您是从哪个 SQL 编辑器运行它的?
  • @JacquesRamsden 一些家伙编辑了我的问题并删除了 mysql-workbench 标签。是的,我正在手动运行它。

标签: mysql sql mysql-workbench


【解决方案1】:

部分解决方案:MySQL Workbench 允许选择多行并仅执行这些行,而不是当前命令或整个脚本。

【讨论】:

  • 是的,但仍然令人头疼。我需要别的东西。
【解决方案2】:

http://dev.mysql.com/doc/refman/5.7/en/comments.html

试试Mysql评论--

SELECT ColumnA FROM TableA;
-- DONTEXECUTEAFTERTHISLINE;
SELECT ColumnB FROM TableB;
SELECT ColumnC FROM TableC;

【讨论】:

  • 我希望不执行第 2 行之后的所有内容。
猜你喜欢
  • 2018-02-08
  • 2019-04-09
  • 2011-09-27
  • 1970-01-01
  • 2019-11-29
  • 1970-01-01
  • 2012-12-21
  • 1970-01-01
  • 2020-08-31
相关资源
最近更新 更多