Asp.net 通过从两个不同的表中选择数据绑定到网格?

Asp.net 通过从两个不同的表中选择数据绑定到网格?,asp.net,sql-server-2008,c#-4.0,Asp.net,Sql Server 2008,C# 4.0,我的数据库中有两个表,名为…Requests和Balance tracker,它们之间没有关系…但我想从两个表中选择数据并将其绑定到两个网格中 请求 EmpID |EmpRqsts|EmpDescription|ApproverID 1 |asdfsb |sadbfsbdf |1 2 |asbfd |sjkfbsd |1 平衡跟踪器 EmpId|BalanceA

我的数据库中有两个表,名为…Requests和Balance tracker,它们之间没有关系…但我想从两个表中选择数据并将其绑定到两个网格中

请求

          EmpID   |EmpRqsts|EmpDescription|ApproverID
           1      |asdfsb  |sadbfsbdf     |1
           2      |asbfd   |sjkfbsd       |1
平衡跟踪器

          EmpId|BalanceAmnt|LastUpdated
         | 1   |5000       |sdfbk
         | 2   |3000       |sjbfsh
员工表

      EmpId|EmpName
       1   |Anil
       2   |Raghu
现在平衡跟踪器有了EmployeeTable的ForeignKey列。。。我想要的是从[Requests]的可清空[EmpRqsts]中选择[EmpName],从[Balance Tracker]中选择[BalanceAmnt][LastUpdate],并将其绑定到网格

这是我用来检索数据的存储过程

create procedure SP_GetEmployeeRequests
    (@ApproverName varchar (50))
as
begin
    select 
         EmployeeDetails.Emp_Username,
         RequestDetails.Request_Amount,
         RequestDetails.Request_description,
         BalanceTracker.Balance_Amount,
         BalanceTracker.LastApproval,
         BalanceTracker.LastUdated
     from 
         EmployeeDetails, RequestDetails, BalanceTracker
     where 
         EmployeeDetails.Emp_ID = RequestDetails.Emp_ID
         and BalanceTracker.Emp_ID = RequestDetails.Emp_ID
         and RequestDetails.Approved_ID = (select Approved_ID 
                                           from ApprovalDetails  
                                           where Approved_By = @ApproverName)
end

在这里之前一切都很好,但是这个查询只检索列名。但不是表的值。有人能帮我解决我的问题吗?

我解决了我的答案,感谢所有试图帮助我的人。我发布了我的答案,以便对任何需要帮助的人都有帮助

 CREATE procedure SP_GetEmployeeRequests
(
     @ApproverName varchar (50)
)
AS
BEGIN

SELECT PTS_Employee.Emp_Username, PTS_Requests.Request_RequestedAmount, PTS_Requests.Request_Description, PTS_BalanceTracker.Balance_BalanceAmount, PTS_BalanceTracker.Balance_LastApproval, PTS_BalanceTracker.Balance_LastUpdated
FROM PTS_Employee  JOIN PTS_Requests  ON PTS_Employee.Emp_ID = PTS_Requests.Emp_ID 
JOIN PTS_BalanceTracker  ON PTS_BalanceTracker.Emp_ID = PTS_Requests.Emp_ID
JOIN PTS_Approval  ON PTS_Approval.Approval_ApprovedID  = PTS_Requests.Approval_ApprovedID
WHERE PTS_Approval.Approval_ApprovedBY = @ApproverName 

END
GO

我解决了我的答案,感谢所有试图帮助我的人…我正在发布我的答案,以便它能完全帮助任何需要帮助的人

 CREATE procedure SP_GetEmployeeRequests
(
     @ApproverName varchar (50)
)
AS
BEGIN

SELECT PTS_Employee.Emp_Username, PTS_Requests.Request_RequestedAmount, PTS_Requests.Request_Description, PTS_BalanceTracker.Balance_BalanceAmount, PTS_BalanceTracker.Balance_LastApproval, PTS_BalanceTracker.Balance_LastUpdated
FROM PTS_Employee  JOIN PTS_Requests  ON PTS_Employee.Emp_ID = PTS_Requests.Emp_ID 
JOIN PTS_BalanceTracker  ON PTS_BalanceTracker.Emp_ID = PTS_Requests.Emp_ID
JOIN PTS_Approval  ON PTS_Approval.Approval_ApprovedID  = PTS_Requests.Approval_ApprovedID
WHERE PTS_Approval.Approval_ApprovedBY = @ApproverName 

END
GO
试试这个:

SqlDataAdapter da = new SqlDataAdapter("select t1.EmpName,t2.EmpRqsts,t3.BalanceAmnt,t3.LastUpdated from EmpTable as t1,Requests as t2,Balance_tracker as t3 where t1.sno=t2.sno and t1.sno=t3.sno", conn);
            DataTable dt1 = new DataTable();
            da.Fill(dt1);
            GridView1.DataSource = dt1;
            GridView1.DataBind();
试试这个:

SqlDataAdapter da = new SqlDataAdapter("select t1.EmpName,t2.EmpRqsts,t3.BalanceAmnt,t3.LastUpdated from EmpTable as t1,Requests as t2,Balance_tracker as t3 where t1.sno=t2.sno and t1.sno=t3.sno", conn);
            DataTable dt1 = new DataTable();
            da.Fill(dt1);
            GridView1.DataSource = dt1;
            GridView1.DataBind();

为什么没有EmpId?它存储的是名称而不是FK。两者都可以通过名称连接吗?否,员工通过文本框手动插入请求选项卡中的Empname。否,员工通过文本框手动插入请求选项卡中的Empname。那么,由于您从其他表中获取所有信息,因此如何需要Employee表?您希望在请求和余额跟踪器之间进行交叉连接,因为它们彼此不相关?请看,我有其他与employee表相关的表…现在有一个基于登录名的审批人,数据应该绑定到网格…如果ID=1的审批人登录,附加到其ID的请求应该绑定到网格为什么请求没有EmpId?它存储的是名称而不是FK。两者都可以通过名称连接吗?否,员工通过文本框手动插入请求选项卡中的Empname。否,员工通过文本框手动插入请求选项卡中的Empname。那么,由于您从其他表中获取所有信息,因此如何需要Employee表?您想在请求和余额跟踪器之间建立交叉连接,因为它们彼此不相关?请看,我有其他与员工表相关的表…现在有一个基于登录名的审批人,数据应绑定到网格…如果ID=1的审批人登录,则附加到其ID的请求应绑定到网格