0

我有一个 InstallShield 2012 InstallScript MSI 项目,我需要运行 Oracle SQL 脚本。

我的测试脚本如下所示:

update zversion set comments = 'Oracle' where version = '1.30.1'

运行时安装挂起并显示对话框:“自定义操作。正在执行 SQL 安装脚本...”

日志文件中的最后一项:

MSI (s) (70:30) [16:05:31:054]:执行操作:CustomActionSchedule(Action=ISSQLServerInstall,ActionType=1025,Source=BinaryData,Target=ISSQLServerInstall,CustomActionData=C:\Users\P\AppData \Local\Temp\~E303.tmp) MSI (s) (70:D4) [16:05:31:367]:调用远程自定义操作。DLL:C:\Windows\Installer\MSIEF3A.tmp,入口点:ISSQLServerInstall 1:处理 SQL 连接“SQLServer”... 1:跳过 SQL 连接“SQLServer”。此连接在 IS_SQLSERVER_CXNS_ABSENT_FROM_INSTALL 属性中指定。1:处理SQL连接'Oracle'... 1:判断连接下是否有至少一个SQL脚本被调度执行...... 1:SQL脚本'SqlScript5.sql1'被调度执行。请注意,如果您为此脚本指定了架构版本,将在稍后做出最终决定。Script Execution=RunOnInstall, Action=Install, Component State=Install, Schema= 1: 试图建立 SQL 连接...服务器: P.PO.COM, 数据库: MSOW 1: [Microsoft][ODBC Driver Manager] Driver's SQLSetConnectAttr失败 1:尝试执行 SQL 脚本... 1:确定是否执行 SQL 脚本“SqlScript5.sql1”... 1:将执行 SQL 脚本,因为在目标数据库上找不到架构版本。1:准备执行SQL脚本文件:'SqlScript5.sql1'。路径:'C:\Users\P\AppData\Local\Temp\~E314.tmp' 1:在第 3 行执行 SQL >>> 正在尝试执行 SQL 脚本... 1:确定是否将执行 SQL 脚本“SqlScript5.sql1”... 1:将执行 SQL 脚本,因为在目标数据库上找不到架构版本。1:准备执行SQL脚本文件:'SqlScript5.sql1'。路径:'C:\Users\P\AppData\Local\Temp\~E314.tmp' 1:在第 3 行执行 SQL >>> 正在尝试执行 SQL 脚本... 1:确定是否将执行 SQL 脚本“SqlScript5.sql1”... 1:将执行 SQL 脚本,因为在目标数据库上找不到架构版本。1:准备执行SQL脚本文件:'SqlScript5.sql1'。路径:'C:\Users\P\AppData\Local\Temp\~E314.tmp' 1:在第 3 行执行 SQL >>>

4

1 回答 1

0

解决。

我删除了旧的脚本文件并创建了一个新的。不知道旧文件出了什么问题。

于 2012-04-12T15:35:16.087 回答