2012-02-29 3 views
1

...異なる表をトウからデータを選択してグリッドにバインドしますか?

要求

を、私は私のデータベースの名前...要求とは関係ありませんバランストラッカーで2つのテーブルを持っている....しかし、私は2つの格子2つのテーブルから、それBINFデータを選択したいです
  EmpID |EmpRqsts|EmpDescription|ApproverID 
      1  |asdfsb |sadbfsbdf  |1 
      2  |asbfd |sjkfbsd  |1 

バランストラッカー

  EmpId|BalanceAmnt|LastUpdated 
     | 1 |5000  |sdfbk 
     | 2 |3000  |sjbfsh 

EMPLOYEE表

 EmpId|EmpName 
     1 |Anil 
     2 |Raghu 

残高トラッカーがEmployeeTableのForeignKey列を持っています... [Empans]からEmpTable [EmpRqsts]を選択し、[BalanceAmnt] [LastUpdated]から[Balance Tracker]を選択してグリッドにバインドします。

これは私のストアドプロシージャである私は、データを取得するために使用しています

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 

すべてはここまでで結構ですが、このクエリは列名のみを取得しています。しかし、テーブルの値ではありません。誰も私の質問に間違って何かを助けることができます..

+0

はなぜ要求なしEMPIDを持っていますか?それはFKの代わりに名前を格納しています。どちらも名前で参加できますか? –

+0

Empnameはありません要求のTabelはEmployeeによって手動でテキストボックス経由で挿入されます.. – SoftwareNerd

+0

EmpnameはありませんIn request tabelはEmployeeによって手動でテキストボックス経由で挿入されます.. – SoftwareNerd

答えて

1

私は私を助けようとしたエヴァー1人のために私の答えに感謝...私は私の答えを投稿している

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 
0

はこれを試してみてください...必要としているいずれかへの完全助けることができます。

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(); 
関連する問題