當前位置:首頁 » 存儲配置 » sql2000分頁存儲過程

sql2000分頁存儲過程

發布時間: 2022-07-12 08:22:49

1. sql2000分頁存儲過程的一個問題

不能直接執行,用exec

如下
create proc proc_my
@page int
as
set @page=@page*3

declare @sql varchar(255)
set @sql='select top 3 * from table1 where id not in (select top '+ @page+' id
from table1)'
exec(@sql)
go

2. sql2000最有效率的分頁sql 語句(解決大數據量)

/*
Function:
SuperPaging
*
Description:
*
超強通用分頁存儲過程
*
Example:
*
SuperPaging
@TableName='表名',@Orderfld='排序列名'
*/
CREATE
PROCEDURE
SupesoftPage
(
@TableName
nvarchar(50),
--
表名
@ReturnFields
nvarchar(2000)
=
'*',
--
需要返回的列
@PageSize
int
=
10,
--
每頁記錄數
@PageIndex
int
=
1,
--
當前頁碼
@Where
nvarchar(2000)
=
'',
--
查詢條件
@Orderfld
nvarchar(2000),
--
排序欄位名
最好為唯一主鍵
@OrderType
int
=
1
--
排序類型
1:降序
其它為升序
)
AS
DECLARE
@TotalRecord
int
DECLARE
@TotalPage
int
DECLARE
@CurrentPageSize
int
DECLARE
@TotalRecordForPageIndex
int
DECLARE
@OrderBy
nvarchar(255)
DECLARE
@CutOrderBy
nvarchar(255)
if
@OrderType
=
1
BEGIN
set
@OrderBy
=
'
Order
by
'
+
REPLACE(@Orderfld,',','
desc,')
+
'
desc
'
set
@CutOrderBy
=
'
Order
by
'+
REPLACE(@Orderfld,',','
asc,')
+
'
asc
'
END
else
BEGIN
set
@OrderBy
=
'
Order
by
'
+
REPLACE(@Orderfld,',','
asc,')
+
'
asc
'
set
@CutOrderBy
=
'
Order
by
'+
REPLACE(@Orderfld,',','
desc,')
+
'
desc
'
END
--
記錄總數
declare
@countSql
nvarchar(4000)
set
@countSql='SELECT
@TotalRecord=Count(*)
From
'+@TableName+'
'+@Where
execute
sp_executesql
@countSql,N'@TotalRecord
int
out',@TotalRecord
out
SET
@TotalPage=(@TotalRecord-1)/@PageSize+1
SET
@CurrentPageSize=@PageSize
IF(@TotalPage=@PageIndex)
BEGIN
SET
@CurrentPageSize=@TotalRecord%@PageSize
IF(@CurrentPageSize=0)
SET
@CurrentPageSize=@PageSize
END
--
返回記錄
set
@TotalRecordForPageIndex=@PageIndex*@PageSize
exec('SELECT
*
FROM
(SELECT
TOP
'+@CurrentPageSize+'
*
FROM
(SELECT
TOP
'+@TotalRecordForPageIndex+'
'+@ReturnFields+'
FROM
'+@TableName+'
'+@Where+'
'+@OrderBy+')
TB2
'+@CutOrderBy+')
TB3
'+@OrderBy)
--
返回總頁數和總記錄數
SELECT
@TotalPage
as
PageCount,@TotalRecord
as
RecordCount
GO

3. 怎麼利用sql2000的存儲過程實現分頁

-- 獲取指定頁的數據
Create PROCEDURE pagination
@tblName varchar(255), -- 表名
@strGetFields varchar(1000) = '*', -- 需要返回的列
@fldName varchar(255)='', -- 排序的欄位名
@PageSize int = 10, -- 頁尺寸
@PageIndex int = 1, -- 頁碼
@doCount bit = 0, -- 返回記錄總數, 非 0 值則返回
@OrderType bit = 0, -- 設置排序類型, 非 0 值則降序
@strWhere varchar(1500) = '' -- 查詢條件 (注意: 不要加 where)
AS

declare @strSQL varchar(5000) -- 主語句
declare @strTmp varchar(110) -- 臨時變數
declare @strOrder varchar(400) -- 排序類型
if @doCount != 0
begin
if @strWhere !=''
set @strSQL = 'select count(*) as Total from [' + @tblName + '] where '+@strWhere
else
set @strSQL = 'select count(*) as Total from [' + @tblName + ']'
end
--以上代碼的意思是如果@doCount傳遞過來的不是0,就執行總數統計。以下的所有代碼都是@doCount為0的情況

else
begin
if @OrderType != 0
begin
set @strTmp = '<(select min'
set @strOrder = ' order by [' + @fldName +'] desc'
--如果@OrderType不是0,就執行降序,這句很重要!
end

else
begin
set @strTmp = '>(select max'
set @strOrder = ' order by [' + @fldName +'] asc'
end
if @PageIndex = 1
begin
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from [' + @tblName + '] where ' + @strWhere + ' ' + @strOrder
else
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from ['+ @tblName + '] '+ @strOrder
--如果是第一頁就執行以上代碼,這樣會加快執行速度
end
else
begin
--以下代碼賦予了@strSQL以真正執行的SQL代碼
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from ['
+ @tblName + '] where [' + @fldName + ']' + @strTmp + '(['+ @fldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' ['+ @fldName + '] from [' + @tblName + ']' + @strOrder + ') as tblTmp)'+ @strOrder
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from ['
+ @tblName + '] where [' + @fldName + ']' + @strTmp + '(['
+ @fldName + ']) from (select top ' + str((@PageIndex-1)*@PageSize) + ' ['
+ @fldName + '] from [' + @tblName + '] where ' + @strWhere + ' '
+ @strOrder + ') as tblTmp) and ' + @strWhere + ' ' + @strOrder
end
end

exec (@strSQL)
GO

4. sql server 分頁存儲過程

CREATE PROCEDURE pagination
@tblName varchar(255), -- 表名
@strGetFields varchar(1000) = '*', -- 需要返回的列
@fldName varchar(255)='', -- 排序的欄位名
@PageSize int = 10, -- 頁尺寸
@PageIndex int = 1, -- 頁碼
@doCount bit = 0, -- 返回記錄總數, 非 0 值則返回
@OrderType bit = 0, -- 設置排序類型, 非 0 值則降序
@strWhere varchar(1500) = '' -- 查詢條件 (注意: 不要加 where)
AS
declare @strSQL varchar(5000) -- 主語句
declare @strTmp varchar(110) -- 臨時變數
declare @strOrder varchar(400) -- 排序類型
if @doCount != 0
begin
if @strWhere !=''
set @strSQL = 'select count(*) as Total from [' + @tblName + '] where '+@strWhere
else
set @strSQL = 'select count(*) as Total from [' + @tblName + ']'
end
--以上代碼的意思是如果@doCount傳遞過來的不是0,就執行總數統計。以下的所有代碼都是@doCount為0的情況
else
begin
if @OrderType != 0
begin
set @strTmp = '<(select min'
set @strOrder = ' order by [' + @fldName +'] desc'
--如果@OrderType不是0,就執行降序,這句很重要!
end
else
begin
set @strTmp = '>(select max'
set @strOrder = ' order by [' + @fldName +'] asc'
end
if @PageIndex = 1
begin
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from [' + @tblName + '] where ' + @strWhere + ' ' + @strOrder
else
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from ['+ @tblName + '] '+ @strOrder
--如果是第一頁就執行以上代碼,這樣會加快執行速度
end
else
begin
--以下代碼賦予了@strSQL以真正執行的SQL代碼
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from [' + @tblName + ']
where [' + @fldName + ']' + @strTmp + '(['+ @fldName + '])
from (select top ' + str((@PageIndex-1)*@PageSize) + ' ['+ @fldName + ']
from [' + @tblName + ']' + @strOrder + ')
as tblTmp)'+ @strOrder
if @strWhere != ''
set @strSQL = 'select top ' + str(@PageSize) +' '+@strGetFields+ ' from [' + @tblName + ']
where [' + @fldName + ']' + @strTmp + '([' + @fldName + '])
from (select top ' + str((@PageIndex-1)*@PageSize) + ' [' + @fldName + ']
from [' + @tblName + ']
where ' + @strWhere + ' ' + @strOrder + ')
as tblTmp) and ' + @strWhere + ' ' + @strOrder
end
end
exec (@strSQL)
GO

/*
-- 需要傳遞的參數
@tblName varchar(255), -- 表名
@strGetFields varchar(1000) = '*', -- 需要返回的列
@fldName varchar(255)='', -- 排序的欄位名
@PageSize int = 10, -- 頁尺寸
@PageIndex int = 1, -- 頁碼
@doCount bit = 0, -- 返回記錄總數, 非 0 值則返回
@OrderType bit = 0, -- 設置排序類型, 非 0 值則降序
@strWhere varchar(1500) = '' -- 查詢條件 (注意: 不要加 where)
-- 調用測試

exec pagination @tblName='jobs', @strGetFields='job_id,job_desc,min_lvl,max_lvl',
@fldName='job_id',@PageSize=3,@PageIndex=1,
@doCount=0,@OrderType=1,@strWhere=''
*/
============================================

CREATE PROC SP_PageList
@tbname sysname, --要分頁顯示的表名
@FieldKey sysname, --用於定位記錄的主鍵(惟一鍵)欄位,只能是單個欄位
@PageCurrent int=1, --要顯示的頁碼
@PageSize int=10, --每頁的大小(記錄數)
@FieldShow nvarchar(1000)='', --以逗號分隔的要顯示的欄位列表,如果不指定,則顯示所有欄位
@FieldOrder nvarchar(1000)='', --以逗號分隔的排序欄位列表,可以指定在欄位後面指定DESC/ASC
--用於指定排序順序
@Where nvarchar(1000)='', --查詢條件
@RecordCount int OUTPUT, --總記錄數
@PageCount int OUTPUT --總頁數
AS
DECLARE @sql nvarchar(4000)
SET NOCOUNT ON
--檢查對象是否有效
IF OBJECT_ID(@tbname) IS NULL
BEGIN
RAISERROR(N'對象"%s"不存在',1,16,@tbname)
RETURN
END
IF OBJECTPROPERTY(OBJECT_ID(@tbname),N'IsTable')=0
AND OBJECTPROPERTY(OBJECT_ID(@tbname),N'IsView')=0
AND OBJECTPROPERTY(OBJECT_ID(@tbname),N'IsTableFunction')=0
BEGIN
RAISERROR(N'"%s"不是表、視圖或者表值函數',1,16,@tbname)
RETURN
END

--分頁欄位檢查
IF ISNULL(@FieldKey,N'')=''
BEGIN
RAISERROR(N'分頁處理需要主鍵(或者惟一鍵)',1,16)
RETURN
END

--其他參數檢查及規范
IF ISNULL(@PageCurrent,0)<1 SET @PageCurrent=1
IF ISNULL(@PageSize,0)<1 SET @PageSize=10
IF ISNULL(@FieldShow,N'')=N'' SET @FieldShow=N'*'
IF ISNULL(@FieldOrder,N'')=N''
SET @FieldOrder=N''
ELSE
SET @FieldOrder=N'ORDER BY '+LTRIM(@FieldOrder)
IF ISNULL(@Where,N'')=N''
SET @Where=N''
ELSE
SET @Where=N'WHERE ('+@Where+N')'

--如果@PageCount為NULL值,則計算總頁數(這樣設計可以只在第一次計算總頁數,以後調用時,把總頁數傳回給存儲過程,避免再次計算總頁數,對於不想計算總頁數的處理而言,可以給@PageCount賦值)
IF @PageCount IS NULL
BEGIN
SET @sql=N'SELECT @PageCount=COUNT(*)'
+N' FROM '+@tbname
+N' '+@Where
EXEC sp_executesql @sql,N'@PageCount int OUTPUT',@PageCount OUTPUT
SET @RecordCount = @PageCount
SET @PageCount=(@PageCount+@PageSize-1)/@PageSize
END

--計算分頁顯示的TOPN值
DECLARE @TopN varchar(20),@TopN1 varchar(20)
SELECT @TopN=@PageSize,
@TopN1=@PageCurrent*@PageSize

--第一頁直接顯示
IF @PageCurrent=1
EXEC(N'SELECT TOP '+@TopN
+N' '+@FieldShow
+N' FROM '+@tbname
+N' '+@Where
+N' '+@FieldOrder)
ELSE
BEGIN
SELECT @PageCurrent=@TopN1,
@sql=N'SELECT @n=@n-1,@s=CASE WHEN @n<'+@TopN
+N' THEN @s+N'',''+QUOTENAME(RTRIM(CAST('+@FieldKey
+N' as varchar(8000))),N'''''''') ELSE N'''' END FROM '+@tbname
+N' '+@Where
+N' '+@FieldOrder
SET ROWCOUNT @PageCurrent
EXEC sp_executesql @sql,
N'@n int,@s nvarchar(4000) OUTPUT',
@PageCurrent,@sql OUTPUT
SET ROWCOUNT 0
IF @sql=N''
EXEC(N'SELECT TOP 0'
+N' '+@FieldShow
+N' FROM '+@tbname)
ELSE
BEGIN
SET @sql=STUFF(@sql,1,1,N'')
--執行查詢
EXEC(N'SELECT TOP '+@TopN
+N' '+@FieldShow
+N' FROM '+@tbname
+N' WHERE '+@FieldKey
+N' IN('+@sql
+N') '+@FieldOrder)
END
END
GO

5. SQL分頁與存儲過程分頁是一樣的嗎

它們是不一樣的。
SQL分頁:
SQL數據是以頁為單位存儲在文件中的,每個頁面8KB。當往一個頁面中插入或者修改數據並會導致該頁面的數據會超出8KB時,SQL Server就會將頁面拆分成兩頁,從而能夠容納新插入的數據。

存儲過程分頁是另外一個概念。當查詢返回的結果集很大時,為了提高效率,將結果集分成若干小頁面,並只將用戶當前需要的頁面返回給應用程序。一個很好的應用案例:當你在網路輸入關鍵字,能搜索到成千上萬的網頁。如果將所有搜索到的結果全部一次顯示出來,將會很費時間和資源。網路按照排名將每10個搜索結果分成一頁,每次顯示一頁。用戶總是能很快見到結果。

6. 求 sql 2000 通用分頁存儲過程 能用就給高分【內有要求】

/****** 對象: 存儲過程 dbo.AspNetPage ******/
/*
=====================================
* @Describe 通用查詢數據ASPNETPAGE分頁過程
/*
@Tables 表名 必選
@PrimaryKey 主關鍵字 必選
@pagesize 頁碼大小 可選 默認值:1
@pageindex 當前頁 可選 默認值:1
@docount 是否只統計總記錄數 可選 默認值:否
@Fields 選擇欄位 可選 默認:所有欄位
@Sort 排序語句,不帶Order By 可選
@Filter 過濾語句,不帶Where 可選
*/
=====================================
*/
CREATE procere AspNetPage
(
/*
@Tables 表名 必選
@PrimaryKey 主關鍵字 必選
@pagesize 頁碼大小 可選 默認值:1
@pageindex 當前頁 可選 默認值:1
@docount 是否只統計總記錄數 可選 默認值:否
@Fields 選擇欄位 可選 默認:所有欄位
@Sort 排序語句,不帶Order By 可選
@Filter 過濾語句,不帶Where 可選
*/
@Tables nvarchar(400),
@PrimaryKey nvarchar(100),
@pagesize int=1,
@pageindex int=1,
@docount bit=0,
@Fields varchar(1000) = '*',
@Sort varchar(1000) = NULL,
@Filter varchar(1000) = NULL)
as
set nocount on

DECLARE @strFilter varchar(1000)
DECLARE @strSort varchar(1000)
IF @Filter IS NOT NULL AND @Filter != ''
BEGIN
SET @strFilter = ' WHERE ' + @Filter + ' '
END
ELSE
BEGIN
SET @strFilter = ''
END
IF @Sort IS Not NULL And @Sort!=''
Begin
Set @strSort='order by '+@Sort+''
End

if(@docount=1)

exec('select count('+@PrimaryKey+') from '+@Tables+' '+@strFilter+'')
else
begin
declare @PageLowerBound int
declare @PageUpperBound int
set @PageLowerBound=(@pageindex-1)*@pagesize
set @PageUpperBound=@PageLowerBound+@pagesize
create table #pageindex(id int identity(1,1) not null,nid int)
set rowcount @PageUpperBound
exec(
'
insert into #pageindex(nid)
select '+@PrimaryKey+' from '+@Tables+' '+@strFilter+' '+@strSort+'
select O.'+@Fields+'
from '+@Tables+' O,#pageindex p
where O.'+@PrimaryKey+'=p.nid and p.id>'+@PageLowerBound+' and p.id<='+@PageUpperBound+' order by p.id
'
)
select * from #pageindex
end
set nocount off

GO
希望對你有幫助。

7. SQL2000分頁存儲過程

row_number--是05以後的版本的函數

SQL2000用
/*--用存儲過程實現的分頁程序

顯示指定表、視圖、查詢結果的第X頁
對於表中主鍵或標識列的情況,直接從原表取數查詢,其它情況使用臨時表的方法
如果視圖或查詢結果中有主鍵,不推薦此方法

--鄒建 2003.09(引用請保留此信息)--*/

/*--調用示例
exec p_show '地區資料'

exec p_show '地區資料',5,3,'地區編號,地區名稱,助記碼','地區編號'
--*/

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_show]') and OBJECTPROPERTY(id, N'IsProcere') = 1)
drop procere [dbo].[p_show]
GO

CREATE Proc p_show
@QueryStr nvarchar(4000), --表名、視圖名、查詢語句
@PageSize int=10, --每頁的大小(行數)
@PageCurrent int=1, --要顯示的頁
@FdShow nvarchar (4000)='', --要顯示的欄位列表,如果查詢結果有標識欄位,需要指定此值,且不包含標識欄位
@FdOrder nvarchar (1000)='' --排序欄位列表
as
declare @FdName nvarchar(250) --表中的主鍵或表、臨時表中的標識列名
,@Id1 varchar(20),@Id2 varchar(20) --開始和結束的記錄號
,@Obj_ID int --對象ID
--表中有復合主鍵的處理
declare @strfd nvarchar(2000) --復合主鍵列表
,@strjoin nvarchar(4000) --連接欄位
,@strwhere nvarchar(2000) --查詢條件

select @Obj_ID=object_id(@QueryStr)
,@FdShow=case isnull(@FdShow,'') when '' then ' *' else ' '+@FdShow end
,@FdOrder=case isnull(@FdOrder,'') when '' then '' else ' order by '+@FdOrder end
,@QueryStr=case when @Obj_ID is not null then ' '+@QueryStr else ' ('+@QueryStr+') a' end

--如果顯示第一頁,可以直接用top來完成
if @PageCurrent=1
begin
select @Id1=cast(@PageSize as varchar(20))
exec('select top '+@Id1+@FdShow+' from '+@QueryStr+@FdOrder)
return
end

--如果是表,則檢查表中是否有標識更或主鍵
if @Obj_ID is not null and objectproperty(@Obj_ID,'IsTable')=1
begin
select @Id1=cast(@PageSize as varchar(20))
,@Id2=cast((@PageCurrent-1)*@PageSize as varchar(20))

select @FdName=name from syscolumns where id=@Obj_ID and status=0x80
if @@rowcount=0 --如果表中無標識列,則檢查表中是否有主鍵
begin
if not exists(select 1 from sysobjects where parent_obj=@Obj_ID and xtype='PK')
goto lbusetemp --如果表中無主鍵,則用臨時表處理

select @FdName=name from syscolumns where id=@Obj_ID and colid in(
select colid from sysindexkeys where @Obj_ID=id and indid in(
select indid from sysindexes where @Obj_ID=id and name in(
select name from sysobjects where xtype='PK' and parent_obj=@Obj_ID
)))
if @@rowcount>1 --檢查表中的主鍵是否為復合主鍵
begin
select @strfd='',@strjoin='',@strwhere=''
select @strfd=@strfd+',['+name+']'
,@strjoin=@strjoin+' and a.['+name+']=b.['+name+']'
,@strwhere=@strwhere+' and b.['+name+'] is null'
from syscolumns where id=@Obj_ID and colid in(
select colid from sysindexkeys where @Obj_ID=id and indid in(
select indid from sysindexes where @Obj_ID=id and name in(
select name from sysobjects where xtype='PK' and parent_obj=@Obj_ID
)))
select @strfd=substring(@strfd,2,2000)
,@strjoin=substring(@strjoin,5,4000)
,@strwhere=substring(@strwhere,5,4000)
goto lbusepk
end
end
end
else
goto lbusetemp

/*--使用標識列或主鍵為單一欄位的處理方法--*/
lbuseidentity:
exec('select top '+@Id1+@FdShow+' from '+@QueryStr
+' where '+@FdName+' not in(select top '
+@Id2+' '+@FdName+' from '+@QueryStr+@FdOrder
+')'+@FdOrder
)
return

/*--表中有復合主鍵的處理方法--*/
lbusepk:
exec('select '+@FdShow+' from(select top '+@Id1+' a.* from
(select top 100 percent * from '+@QueryStr+@FdOrder+') a
left join (select top '+@Id2+' '+@strfd+'
from '+@QueryStr+@FdOrder+') b on '+@strjoin+'
where '+@strwhere+') a'
)
return

/*--用臨時表處理的方法--*/
lbusetemp:
select @FdName='[ID_'+cast(newid() as varchar(40))+']'
,@Id1=cast(@PageSize*(@PageCurrent-1) as varchar(20))
,@Id2=cast(@PageSize*@PageCurrent-1 as varchar(20))

exec('select '+@FdName+'=identity(int,0,1),'+@FdShow+'
into #tb from'+@QueryStr+@FdOrder+'
select '+@FdShow+' from #tb where '+@FdName+' between '
+@Id1+' and '+@Id2
)

GO

8. 高分求SQL分頁的存儲過程

ASP.Net中的DataGrid有內置分頁功能,
但是它的默認的分頁方式效率是很低的,特別是在數據量很大的時候,用它內置的分頁功能幾乎是不可能的事,因為它會把所有的數據從資料庫讀出來再進行分頁,
這種只選取了一小部分而丟掉大部分的方法是不可去取的.
在最進的一個項目中因為一個管理頁面要管理的數據量非常大,所以必須分頁顯示,並且不能用DataGrid的內置分頁功能,於是自己實現分頁.
下面介紹一下我在項目中用到的分頁方法.
當然顯示控制項還是用DataGrid的,
因為數據綁定很方便^_^.
要保證不傳輸冗餘的數據,那麼必須在資料庫中數據讀取時實現分頁,
資料庫的分頁操作可以放在存儲過程中.
看了CSDN的一篇Blog中講了一個百萬級數據分頁的存儲過程的實現(
http://blog.csdn.net/wellknow/posts/55167.aspx
,他的這個方法可以根據不同情況進行適當的優化),
根據他的方法,這里實現一個簡單的SQL語句來實現這里分頁需要的存儲過程。
create
procere
ListProct
(
@PageIndex
int,
--
分頁後需要頁的序號
@PageSize
int,
--
一頁的大小
@ConditionSQL

查詢條件的SQL語句
)
AS

具體代碼就不寫了(可以參考上面的鏈接).
具體的SQL語句如下:
Select
TOP
100
*
FROM
(select
*
from
proct
where
proctid<200000)
T
Where
T.proctid
NOT
IN
(Select
TOP
900
proctid
FROM
(select
proctid
from
proct
where
proctid<200000)
T1
orDER
BY
T1.proctid
asc)
orDER
BY
proctid
asc
這條語句的
從總的商品(30萬)中取出proctid<200000(共20萬),再按每頁100的大小分頁,然後取出第10頁.
Public
DataTable
ListProct(int
pageIndex,
int
pageSize)
{
//ADO.net從資料庫中取出數據的代碼就略過^_^.
}
用上面的存儲過程讀出的數據在DataGrid裡面分頁,
必須把DataGrid的AllowPaging和AllowCustomPaging設置為true
protected
System.Web.UI.WebControls.DataGrid
ProctGrid;
ProctGrid.AllowPaging
=
true;
ProctGrid.AllowCustomPaging
=
true;
然後在設置要顯示的一頁的大小
ProctGrid.PageSize
=
100;
//
在顯示的時候依據實際的數據顯示。
設置一頁大小後,如果要讓DataGrid實際分出頁數來,還必須設置
ProctGrid.VirtualItemCount
=
GetProctCount()
;
//
GetProctCount()
的功能是獲取滿足條件的產品數目,
這里的條件就是proctid<200000.
設置這項屬性後,那麼這個DataGrid的頁數就是
VirtualItemCount/PageSize,
也就是PageCount的值.
不能對PageCount直接賦值,因為他是只讀的屬性.

9. 請問在 sql server 2000中怎樣執行 存儲過程

查詢分析器中:EXEC
存儲過程
名稱(無參數)
查詢:
use
myDataBase(要說明在那個資料庫中運行。默認是master)
select
*
from
同學錄

帶參數存儲過程的:
declare
參數
execute
存儲過程名稱,參數

熱點內容
我的世界伺服器復制物品bug2020 發布:2024-10-08 13:35:28 瀏覽:391
python表格抓取 發布:2024-10-08 13:30:31 瀏覽:718
編寫定時下載ftp文件腳本 發布:2024-10-08 13:30:18 瀏覽:227
電腦上怎麼看本機的配置 發布:2024-10-08 13:26:02 瀏覽:41
androidepub 發布:2024-10-08 13:25:22 瀏覽:549
怎麼拿雲伺服器做進銷存 發布:2024-10-08 13:25:14 瀏覽:725
小本解說伺服器是什麼 發布:2024-10-08 13:25:09 瀏覽:394
安卓倍速腳本 發布:2024-10-08 13:18:48 瀏覽:78
飢荒本地伺服器後續怎麼添加伺服器模組 發布:2024-10-08 13:18:24 瀏覽:200
阿里雲伺服器centos7還是8 發布:2024-10-08 13:16:16 瀏覽:718