ストアドプロシージャのwhileループを使用するとSQLサーバーで正しく動作しますが、最初の行のみがasp.netグリッドビューに戻ります。sqlのストアドプロシージャのループはasp.netのグリッドビューに1行しか返しません
SQLマイストアドプロシージャ
create procedure [dbo].[DoorDetails]
@emp varchar(16),
@fromdate datetime,
@todate datetime,
@cdate datetime [email protected]
as
while @cdate<= @todate
Begin
select convert(varchar,(CONVERT(date,@cdate,103)),103) as Date, Empname, min(TransactionDateTime) as EntryTime ,max(TransactionDateTime) as ExitTime,
(DateDIFF (MINUTE,min(TransactionDateTime), max(TransactionDateTime)))/60 as Hours,
(DateDIFF (MINUTE,min(TransactionDateTime), max(TransactionDateTime)))%60 as minutes from
ceptEmpTxn where EmpName = @emp and cast(TransactionDateTime as Date)=cast(@cdate as date) group by empname
SET @cdate = DATEADD(dd,1,@cdate)
end
GO
結果
-------------------------------------------------------------------------------------------------------------
|Date| |Empname| |EntryTime| |ExitTime| |Hours| minutes|
|14/09/2016| |PRAVEEN KUMAR| |2016-09-14 09:28:13.000||2016-09-14 18:42:14.000 9 14
------------------------------------------------------------------------------------------------------------
|Date| |Empname| |EntryTime| |ExitTime| |Hours| minutes|
|15/09/2016| |PRAVEEN KUMAR| |2016-09-15 09:27:13.000||2016-09-15 17:16:46.000 7 49
-------------------------------------------------------------------------------------------------------------
|Date| |Empname| |EntryTime| |ExitTime| |Hours| minutes|
|16/09/2016| |PRAVEEN KUMAR| |2016-09-16 09:30:33.000||2016-09-16 19:03:14.000 9 33
ヘッダが
------------------------------------------------------------------------
Date| Empname| EntryTime| ExitTime| Hours| minutes|
15/09/2016| PRAVEEN KUMAR| 15-09-2016 09:27:07| 15-09-2016 17:16:46| 7| 49|
(グリッドビューを使用して)ウェブページ内のSQLに
検索結果をその都度繰り返しれます私のf asp.net
一度だけ、すべての行に続くテーブルヘッダを持つようにもどのようにストアドプロシージャからすべての値を返す方法public DataTable tottime(string empname, DateTime fromdate, DateTime todate)
{
System.Data.SqlClient.SqlConnection myConn = new System.Data.SqlClient.SqlConnection(ConfigurationManager.ConnectionStrings["ceptConnectionString"].ConnectionString.ToString());
DataTable myDt = new DataTable();
System.Data.SqlClient.SqlCommand myCmd = new System.Data.SqlClient.SqlCommand();
myCmd.CommandType = System.Data.CommandType.StoredProcedure;
System.Data.SqlClient.SqlDataAdapter da = new System.Data.SqlClient.SqlDataAdapter();
myCmd.CommandText = "DoorDetails";
myCmd.Parameters.AddWithValue("@emp", empname);
myCmd.Parameters.AddWithValue("@fromdate", fromdate);
myCmd.Parameters.AddWithValue("@todate", todate);
da.SelectCommand = myCmd;
try
{
myCmd.Connection = myConn;
da.Fill(myDt);
return myDt;
}
catch (Exception ex)
{
throw;
}
finally
{
myDt = null;
da.Dispose();
myCmd.Dispose();
myConn.Close();
myConn.Dispose();
}
}
で慰め。
以下のSPを使用できましたか? – balaji
はいストアドプロシージャは正常に動作しています。クエリはSQLサーバーで必要な出力を与えますが、グリッドビューでは得られない期待される結果が得られます。 – praveenrsmart
SQL Serverでは、1つの結果セットとして取得できますか?グリッドの代わりに? – balaji