【问题标题】:Translate PL/SQL define to TSQL将 PL/SQL 定义转换为 TSQL
【发布时间】:2019-05-23 10:52:59
【问题描述】:

我的任务是将 PL/SQL 代码转换为 T-SQL。

谁能解释一下SET DEFINE ON 在 sqlplus 中的作用,最重要的是如何将其转换为 T-SQL(我想使用 sqlcmd 作为启动器?)

【问题讨论】:

  • SET DEFINE 是一个 SQL*Plus 命令,用于设置替换变量的使用和前缀。 & 是默认前缀,SET DEFINE ON 将其重置为此默认值并启用替换变量的使用。所以这不是 PL/SQL 的事情。据我所知,sqlcmd 没有替代变量之类的东西,即没有等价物。但我可能会在那里绞尽脑汁。

标签: tsql plsql sqlplus sqlcmd


【解决方案1】:

SET DEFINE 是一个 SQL*Plus 命令,用于设置替换变量的使用和前缀。 & 是默认前缀,SET DEFINE ON 将其重置为此默认值并启用替换变量的使用。

所以这不是 PL/SQL 的事情,而是 SQL*Plus 的事情。

据我所知,sqlcmd 没有替代变量之类的东西,即sqlcmd 没有等价物,更不用说 T-SQL。但我可能错了。

【讨论】:

    【解决方案2】:

    '&' 似乎是 SQL*Plus(即客户端)用来激活其“变量替换”功能的元语言的标记。因此,包含 '&'(“Marks & Spencer”)标记的字符串文字可能不会完全按预期运行。 SET DEFINE 显然用于控制该激活。

    【讨论】:

      猜你喜欢
      • 2014-07-12
      • 2018-09-16
      • 2013-11-08
      • 1970-01-01
      • 2010-10-22
      • 1970-01-01
      • 2011-08-08
      • 2014-03-31
      • 2015-09-16
      相关资源
      最近更新 更多