Sql server MSBuild从数据库返回值
有人知道如何将(sql)数据库中的值返回到MSBuild脚本中吗?我希望将该值放入属性中,以便将其传递给后续生成任务 目前我正在处理以下内容,但返回-1表示查询已成功执行,而我想要的是查询的实际结果。(SqlExecute来自社区任务)Sql server MSBuild从数据库返回值,sql-server,msbuild,automation,build-automation,Sql Server,Msbuild,Automation,Build Automation,有人知道如何将(sql)数据库中的值返回到MSBuild脚本中吗?我希望将该值放入属性中,以便将其传递给后续生成任务 目前我正在处理以下内容,但返回-1表示查询已成功执行,而我想要的是查询的实际结果。(SqlExecute来自社区任务) 您是否尝试过“从dbo.trade中选择*”? 根据msbuild communitytasks文档,结果返回给定语句的行数,而您的语句可能返回包含计数的单行。尝试了“从dbo.trade中选择*”,仍然给出相同的-1 社区任务文档中说输出“输出返回计数/值”
您是否尝试过“从dbo.trade中选择*”?
根据msbuild communitytasks文档,结果返回给定语句的行数,而您的语句可能返回包含计数的单行。尝试了“从dbo.trade中选择*”,仍然给出相同的-1
社区任务文档中说输出“输出返回计数/值”,但它没有进一步说明如何使用它。通常最简单的方法是在Reflector中打开社区任务或直接检查代码库以查看它的使用方法 罗布 好主意。在reflector中打开社区任务表明SqlExecute任务永远不会返回查询值
this._result = command.ExecuteNonQuery();
这让我重新尝试让它与oSql和Exec任务一起工作
<Exec Command="osql -n -S $(DatabaseMachineName) -E -q "select count(*) from trade" -b -d $(DatabaseName)">
<Output PropertyName="TradeCount" TaskParameter="Outputs"/>
</Exec>
<Message Text="Result:$(TradeCount)" />
是的,这方面的例子真的很难找到。谢谢Rob,你引导我找到了我的答案-扩展MSBuildCommunity任务。我已经扩展了SQLExecute任务以返回标量值,并打算在某个时候将其更新到社区代码库中。已经有一些代码在那里做这件事,但它是不完整的。
<Exec Command="osql -n -S $(DatabaseMachineName) -E -q "select count(*) from trade" -b -d $(DatabaseName)">
<Output PropertyName="TradeCount" TaskParameter="Outputs"/>
</Exec>
<Message Text="Result:$(TradeCount)" />