我正在阅读Murachs ADO.NET 4数据库编程书。在第7章中,他们讨论了输出参数。在编写数据读取器之前,我从未见过这个。这本书釉了主题,互联网也是如此。我的问题是什么是输出参数以及您将使用输出参数的情况。
以下是本书中的示例:
SELECT @Name = Name, @Address = Address1, @Address2 = Address2, @City = City
FROM Vendors
WHERE VendorID = @VendorID
正如您所看到的,此查询的选择区域中有参数。这是如何运作的?我以前从未见过他们。我总是在where子句中看到它们。
答案 0 :(得分:1)
如果您想要返回多个标量值而不必将它们放入结果表中,您可以使用多个输出参数。
T-SQL上下文(无论是存储过程还是直接执行SQL)接受参数,并返回以下任何或所有内容:
在你发布的T-SQL中,它意味着而不是在结果集中返回一个表,代码在T-SQL变量中存储奇异的标量字段值(因为VendorID
是主键,只有1将返回行),并且可能这些变量被绑定为输出参数,因此可以由调用SQL客户端访问。
在某种程度上,可以将T-SQL脚本的输出与C#函数进行比较,C#函数可以通过设置out
方法参数,提供返回值以及写入stdout
或stderr
(或任何其他非本地的范围内资源)。