我正在构建一个应用程序,我想将多个查询批处理到数据库的一次往返中。例如,假设单个页面需要显示用户列表、组列表和权限列表。
所以我已经存储了procs(或者只是简单的sql命令,比如“select * from Users”),我想执行其中的三个。但是,要填充这一页,我必须进行 3 次往返。
现在我可以编写一个存储过程(“getUsersTeamsAndPermissions”)或执行一个 SQL 命令“select * from Users;exec getTeams;select * from Permissions”。
但我想知道是否有更好的方法来指定在一次往返中执行 3 次操作。好处包括更容易进行单元测试,并允许数据库引擎并行化查询。
我正在使用 C# 3.5 和 SQL Server 2008。