【发布时间】:2014-11-11 07:24:28
【问题描述】:
我需要从数据库中获取大约 40000 行并绑定到 gridview 中,然后这些数据需要导出到 excel 和 PDF。 当我用简单的存储过程绑定行时,大约需要 5-6 分钟左右的时间。 所以我写了一个自定义分页的存储过程。
我的存储过程如下..
CREATE PROCEDURE [dbo].[uspGetTarnsactionPaging]
@PageIndex INT = 1
,@PageSize INT = 10
,@RecordCount INT OUTPUT
AS
BEGIN
SET NOCOUNT ON;
select APP.AppName AS "Application Name",
TRA.OS_Name as "OS",TRA.MSISDN,TRA.RequestDateTime AS "Request DateTime Stamp",
TRA.ResponseDateTime AS "Reponse DateTime Stamp" ,TRA.IP,TRA.UserDetails,TRA.UserAgent,TRA.OperationType ,
TRA.OperationDetails AS "Opperation Details",TRA.Status
INTO #Results
FROM TTSL_Application_Master APP INNER JOIN TTSL_ApplicationTransactionDetails_Master TRA
ON APP.AppID=TRA.ApplicationID
WHERE TRA.ApplicationID=2 AND TRA.RequestDateTime >= 2014-11-02 AND TRA.ResponseDateTime <= 2014-11-03
SELECT ROW_NUMBER() OVER
(
order by App_TransactionDetailsID
)AS RowNumber
SELECT @RecordCount = COUNT(*)
FROM #Results
SELECT * FROM #Results
WHERE RowNumber BETWEEN(@PageIndex -1) * @PageSize + 1 AND(((@PageIndex -1) * @PageSize + 1) + @PageSize) - 1
DROP TABLE #Results
结束
当我执行存储过程时,显示以下错误..
消息 207,级别 16,状态 1,过程 uspGetTarnsactionPaging,第 18 行 列名“App_TransactionDetailsID”无效。
【问题讨论】:
标签: c# asp.net gridview stored-procedures pagination