1

我想我在 InstallShield 2010 中发现了多行注释和 SQL 脚本的错误。

要重现该错误,请创建一个基本的 MSI 项目。转到 Installation Designer -> SQL Scripts,创建一个 SQL 连接,然后添加一个包含以下脚本的新脚本:

/*
USE [master]
GO
*/

USE master
GO

构建 MSI 并尝试安装它,您将收到以下 MSI 错误:

错误 27506。执行 SQL 脚本 sqlscript.sql 时出错。第 3 行。缺少结束注释标记“*/”。(113)

将多行注释更改为 --form 将解决该问题。此外,如果结束注释标记前面没有 GO 语句,则安装不会失败。例如:

/*
THIS
WILL
NOT
FAIL
*/

有人遇到过这个错误吗?有什么办法可以“修复”它?

PS:我将把它发布到 Flexara 的论坛。

4

1 回答 1

2

这对我来说听起来像是已知的行为。我相信解析会寻找GO不考虑其他任何内容的行,因此多行注释不会影响它。请参阅 hidenori 在线程Install Shield is traming SQL Scripts上的第二个响应。

您似乎已经确定了解决方法 - 将 更改GO--GO.

于 2011-07-14T12:15:40.330 回答