Took a while to track this
one down. I was trying to replace ${nant.Version}
when I should have been using ${nant.version} Sigh … SQL Task Aborts when expandprops=”true”
and a ${property} has not been defined The following Build Script
<project name="SQL bug" basedir="."
default="Bug"> <!-- Properties --> <!-- Properties --> <!-- Properties -->
<property name="SqlServer"
value="(Local)"/>
<property name="SqlConnMaster" value="Provider=SQLOLEDB;Data Source=${SqlServer};
Integrated Security=SSPI"/>
<property name="SqlDb"
value="tempdb"/> <!-- Targets --> <!-- Targets --> <!-- Targets -->
<target name="Bug">
<call target="Works"/>
<call target="Fails"/>
</target>
<target name="Works">
<sql connstring="${SqlConnMaster}" delimiter="GO" delimstyle="
Print '${Unknown}'
]]></sql>
</target>
<target name="Fails">
<sql connstring="${SqlConnMaster}" delimiter="GO" delimstyle="
Print '${Unknown}'
]]></sql>
</target>
</project> Generated the following output:
Buildfile:
file:///C:/EnY/TEM_SQL/_nAnt/Bug.Build
Base Directory: C:\EnY\TEM_SQL\_nAnt.
Bug:
Works:
SQL Task:
Connection String: Provider=SQLOLEDB;Data Source=(Local); Integrated Security=SSPI
Use Transaction?: True
Batch Sql Statements?:
True
Batch Delimiter: GO
Delimiter Style: Normal
Fail On Error?: True
Source script file:
Output file:
SQL Statement:
Print '${Unknown}'
${Unknown}
Fails:
SQL Task:
Connection String: Provider=SQLOLEDB;Data Source=(Local); Integrated Security=SSPI
Use Transaction?: True
Batch Sql Statements?:
True
Batch Delimiter: GO
Delimiter Style: Normal
Fail On Error?: True
Source script file:
Output file:
Total time: 0 seconds.
BUILD FAILED
INTERNAL ERROR
System.NullReferenceException: Object
reference not set to an instance of an object. at NAnt.Core.BuildException.get_Message() at NAnt.Contrib.Tasks.SqlTask.ExecuteTask() at NAnt.Core.Task.Execute() at NAnt.Core.Target.Execute() at NAnt.Core.Project.Execute(String
targetName) at NAnt.Core.Tasks.CallTask.ExecuteTask() at NAnt.Core.Task.Execute() at NAnt.Core.Target.Execute() at NAnt.Core.Project.Execute(String
targetName) at NAnt.Core.Project.Execute() at NAnt.Core.Project.Run()
Please send bug report to [EMAIL PROTECTED] |