从 SQL 服务器查询中获取两个结果集会给出两个不同的输出
Getting two result sets from SQL Server query gives two different outputs
我创建了一个存储过程,它在我的本地 sql 服务器数据库上运行良好,但同样的过程在 bigrocks 的 Live Server 上不起作用。实际上我在两个不同的查询中从两个表中获取数据,在实时环境中,第一个查询的数据仅获取。
请建议如何解决这个问题。
CRAETE procedure [dbo].[usp_RegisterTable_GetAllUserName]
as
begin
select [User_Id],UserName from RegisterTable where Status='Active'
select [User_Id],UserName from DistributerTable where Status='Active'
end
谢谢..
你试过了吗:
select [User_Id],UserName
from RegisterTable
where Status='Active'
UNION ALL
select [User_Id],UserName
from DistributerTable
where Status='Active'
或者您正在寻找两个不同的结果集?
您可以为这些查询创建两个不同的过程,并在您的应用程序中合并结果集code.I给您举个例子
CREATE PROCEDURE FromRgisterTable
AS
BEGIN
select [User_Id],UserName from RegisterTable where Status='Active'
END
CREATE PROCEDURE FromDistributerTable
AS
BEGIN
select [User_Id],UserName from DistributerTable where Status='Active'
END
在您的 C# 应用程序代码中,例如
DataTable dt1 = new DataTable();
DataTable dt2 = new DataTable();
SqlDataAdapter sqlda1 = new SqlDataAdapter("FromFirstProcedure", Connect());
sqlda1.SelectCommand.CommandType = CommandType.StoredProcedure;
sqlda1.Fill(dt1);
SqlDataAdapter sqlda2 = new SqlDataAdapter("FromSecondProcedure", Connect());
sqlda2.SelectCommand.CommandType = CommandType.StoredProcedure;
sqlda2.Fill(dt2);
dt1.Merge(dt2);
我认为它应该完成你的工作。
我创建了一个存储过程,它在我的本地 sql 服务器数据库上运行良好,但同样的过程在 bigrocks 的 Live Server 上不起作用。实际上我在两个不同的查询中从两个表中获取数据,在实时环境中,第一个查询的数据仅获取。
请建议如何解决这个问题。
CRAETE procedure [dbo].[usp_RegisterTable_GetAllUserName]
as
begin
select [User_Id],UserName from RegisterTable where Status='Active'
select [User_Id],UserName from DistributerTable where Status='Active'
end
谢谢..
你试过了吗:
select [User_Id],UserName
from RegisterTable
where Status='Active'
UNION ALL
select [User_Id],UserName
from DistributerTable
where Status='Active'
或者您正在寻找两个不同的结果集?
您可以为这些查询创建两个不同的过程,并在您的应用程序中合并结果集code.I给您举个例子
CREATE PROCEDURE FromRgisterTable
AS
BEGIN
select [User_Id],UserName from RegisterTable where Status='Active'
END
CREATE PROCEDURE FromDistributerTable
AS
BEGIN
select [User_Id],UserName from DistributerTable where Status='Active'
END
在您的 C# 应用程序代码中,例如
DataTable dt1 = new DataTable();
DataTable dt2 = new DataTable();
SqlDataAdapter sqlda1 = new SqlDataAdapter("FromFirstProcedure", Connect());
sqlda1.SelectCommand.CommandType = CommandType.StoredProcedure;
sqlda1.Fill(dt1);
SqlDataAdapter sqlda2 = new SqlDataAdapter("FromSecondProcedure", Connect());
sqlda2.SelectCommand.CommandType = CommandType.StoredProcedure;
sqlda2.Fill(dt2);
dt1.Merge(dt2);
我认为它应该完成你的工作。