نمایش نتایج 1 تا 2 از 2

نام تاپیک: کندی سرعت pagination برای 400.000 رکورد در sql server 2008 r2

  1. #1

    کندی سرعت pagination برای 400.000 رکورد در sql server 2008 r2

    سلام.
    من یه ویو دارم که 400.000 رکورد داره.
    از sp زیر برای صفحه بندی استفاده می کنم. وقتی تعداد رکورد ها کمتره مثلا 50.000 تا سرعت خوبه اما وقتی 400.000 تا میشه حدود 35 ثانیه طول می کشه تا اجرا بشه و مثلا 10 رکورد رو نمایش بده.

    آیا کسی راهکاری داره برای بهبود و بهینه سازی اون؟


    ALTER procedure [SelectPaging]
    @SelectedColumn nvarchar(max),
    @ViewName nvarchar(200),
    @PrimaryKeyName nvarchar(100),
    @RowCountOnPage int,
    @PageNumberDesired int,
    @Condition nvarchar(max),
    @OrderBy nvarchar(200),
    @OrderByAsc bit,
    @UserID int,
    @ErrorNumber int out,
    @TotalRowsCount int out
    as
    begin
    SET NOCOUNT ON;

    Begin Try

    exec [general].TotalRowsWithFiltering @PrimaryKeyName,@viewName ,@Condition ,@UserID,@TotalRowsCount out,@ErrorNumber out


    declare @RowNumberFrom int,@RowNumberTo int
    set @RowNumberFrom=((@PageNumberDesired-1)*@RowCountOnPage)
    set @RowNumberTo=(@PageNumberDesired*@RowCountOnPage)+ 1

    if @Condition='' or @Condition is null
    set @Condition=' 1=1 '
    else set @Condition=@Condition

    if @OrderBy='' or @OrderBy is null
    set @OrderBy=@PrimaryKeyName
    declare @OrderByAsc_Desc nvarchar(6)
    if (@OrderByAsc='false' or @OrderByAsc is null)
    set @OrderByAsc_Desc=' Desc'
    else if @OrderByAsc='true'
    set @OrderByAsc_Desc=' Asc'


    declare @SQLQuery nvarchar(max)


    set @SQLQuery='SELECT
    *
    FROM (
    SELECT
    *,
    ROW_NUMBER() OVER (order by '+@OrderBy+' '+@OrderByAsc_Desc+') AS RowNumber
    FROM (
    SELECT '+@SelectedColumn+'
    FROM '+@viewName+' where ' + @Condition +'
    ) AS d
    ) AS c
    where RowNumber >'+cast(@RowNumberFrom as nvarchar(10))+' and RowNumber < '+cast(@RowNumberTo as nvarchar(10))


    EXECUTE sp_executesql @SQLQuery

    set @ErrorNumber=@@ERROR

    END TRY
    BEGIN CATCH

    END CATCH

    end


    کارم ضروریه. لطفا راهنمایی کنید

  2. #2

    نقل قول: کندی سرعت pagination برای 400.000 رکورد در sql server 2008 r2

    الان
     exec [general].TotalRowsWithFiltering @PrimaryKeyName,@viewName ,@Condition ,@UserID,@TotalRowsCount out,@ErrorNumber out

    چیه؟
    ویو که توی صورت مسئله هست چیه؟

تاپیک های مشابه

  1. سوال در مورد سرعت Sql Server 2008
    نوشته شده توسط سیروس مقصودی در بخش مدیریت دیتابیس (Database Administration)
    پاسخ: 2
    آخرین پست: دوشنبه 14 بهمن 1392, 08:58 صبح
  2. افزایش سرعت نصب sql server 2008 برای برنامه نوشته شده با C#‎
    نوشته شده توسط sodi110 در بخش مسائل مرتبط با نصب و راه اندازی
    پاسخ: 3
    آخرین پست: پنج شنبه 08 فروردین 1392, 15:58 عصر
  3. پاسخ: 7
    آخرین پست: چهارشنبه 30 آذر 1390, 07:43 صبح
  4. نصب همزمان sql server 2008 R2 full و sql server 2008 R2 express
    نوشته شده توسط nbe( amateur C sharp در بخش مسائل مرتبط با نصب و راه اندازی
    پاسخ: 0
    آخرین پست: سه شنبه 09 فروردین 1390, 14:37 عصر
  5. سوال: آيا View از يك جدول SQL SERVER 2005 , SQL SERVER 2008 به SQL SERVER 2000 مي توان داد؟
    نوشته شده توسط ali_abbasi22145 در بخش SQL Server
    پاسخ: 3
    آخرین پست: جمعه 11 اردیبهشت 1388, 22:36 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •