IF EXISTS (SELECT name
FROM sysobjects
WHERE name = N'xjtu_custompaging'
AND type = 'P')
DROP PROCEDURE xjtu_custompaging
GOCREATE PROCEDURE xjtu_custompaging
@recordcount int OUTPUT,
@state int OUTPUT,
@categoryid int=0,
@pagesize int,
@totalpage int OUTPUT,
@currentpage int
AS
DECLARE @startid int
DECLARE @endid int
-- =============================================
-- Create table with IDENTITY column
-- =============================================
IF EXISTS (SELECT name
FROM sysobjects
WHERE name = N'#BookList'
AND type = 'U')
DROP TABLE #BookListCREATE TABLE #BookList
(
ID int IDENTITY(1,1) PRIMARY KEY,
BookID int
)
IF(@categoryid=0)
INSERT INTO #BookList (BookID) SELECT ID FROM BookStore ORDER BY AddDate DESC
ELSE
INSERT INTO #BookList (BookID) SELECT ID FROM BookStore
Where CategoryID=@categoryid ORDER BY AddDate DESC IF(@categoryid!=0)
SELECT @recordcount=COUNT(ID) FROM BOOKSTORE WHERE CategoryID=@categoryid
ELSE SELECT @recordcount=COUNT(ID) FROM BOOKSTORE----这里要转换为浮点数
SELECT @totalpage=cast(@recordcount+@pagesize-1 as decimal(10,1))/@pagesize
IF(@totalpage<@currentpage)
SELECT @state=0
RETURN
--设置起始结束ID
SET @startid=(@currentpage-1)*@pagesize
SET @endid=(@currentpage*@pagesize+1)
--开始取出数据
SELECT B.ID,B.BookName,B.Writer,B.Publisher,B.Summary,B.AddDate,A.BookID
FROM #BookList A INNER JOIN BookStore B ON A.BookID=B.ID Where A.ID>@startid AND A.ID <@endid
GO
FROM sysobjects
WHERE name = N'xjtu_custompaging'
AND type = 'P')
DROP PROCEDURE xjtu_custompaging
GOCREATE PROCEDURE xjtu_custompaging
@recordcount int OUTPUT,
@state int OUTPUT,
@categoryid int=0,
@pagesize int,
@totalpage int OUTPUT,
@currentpage int
AS
DECLARE @startid int
DECLARE @endid int
-- =============================================
-- Create table with IDENTITY column
-- =============================================
IF EXISTS (SELECT name
FROM sysobjects
WHERE name = N'#BookList'
AND type = 'U')
DROP TABLE #BookListCREATE TABLE #BookList
(
ID int IDENTITY(1,1) PRIMARY KEY,
BookID int
)
IF(@categoryid=0)
INSERT INTO #BookList (BookID) SELECT ID FROM BookStore ORDER BY AddDate DESC
ELSE
INSERT INTO #BookList (BookID) SELECT ID FROM BookStore
Where CategoryID=@categoryid ORDER BY AddDate DESC IF(@categoryid!=0)
SELECT @recordcount=COUNT(ID) FROM BOOKSTORE WHERE CategoryID=@categoryid
ELSE SELECT @recordcount=COUNT(ID) FROM BOOKSTORE----这里要转换为浮点数
SELECT @totalpage=cast(@recordcount+@pagesize-1 as decimal(10,1))/@pagesize
IF(@totalpage<@currentpage)
SELECT @state=0
RETURN
--设置起始结束ID
SET @startid=(@currentpage-1)*@pagesize
SET @endid=(@currentpage*@pagesize+1)
--开始取出数据
SELECT B.ID,B.BookName,B.Writer,B.Publisher,B.Summary,B.AddDate,A.BookID
FROM #BookList A INNER JOIN BookStore B ON A.BookID=B.ID Where A.ID>@startid AND A.ID <@endid
GO
FROM sysobjects
WHERE name = N'xjtu_custompaging'
AND type = 'P')
DROP PROCEDURE xjtu_custompaging
GOCREATE PROCEDURE xjtu_custompaging
@recordcount int OUTPUT,
@state int OUTPUT,
@categoryid int=0,
@pagesize int,
@totalpage int OUTPUT,
@currentpage int
AS
DECLARE @startid int
DECLARE @endid int
-- =============================================
-- Create table with IDENTITY column
-- =============================================
IF EXISTS (SELECT name
FROM sysobjects
WHERE name = N'#BookList'
AND type = 'U')
DROP TABLE #BookListCREATE TABLE #BookList
(
ID int IDENTITY(1,1) PRIMARY KEY,
BookID int
)
IF(@categoryid=0)
INSERT INTO #BookList (BookID) SELECT ID FROM BookStore ORDER BY AddDate DESC
ELSE
INSERT INTO #BookList (BookID) SELECT ID FROM BookStore
Where CategoryID=@categoryid ORDER BY AddDate DESC IF(@categoryid!=0)
SELECT @recordcount=COUNT(ID) FROM BOOKSTORE WHERE CategoryID=@categoryid
ELSE SELECT @recordcount=COUNT(ID) FROM BOOKSTORE----这里要转换为浮点数
SELECT @totalpage=cast(@recordcount+@pagesize-1 as decimal(10,1))/@pagesize
IF(@totalpage<@currentpage)
SELECT @state=0
RETURN
--设置起始结束ID
SET @startid=(@currentpage-1)*@pagesize
SET @endid=(@currentpage*@pagesize+1)
--开始取出数据
SELECT B.ID,B.BookName,B.Writer,B.Publisher,B.Summary,B.AddDate,A.BookID
FROM #BookList A INNER JOIN BookStore B ON A.BookID=B.ID Where A.ID>@startid AND A.ID <@endid
GO
返回代码 = 0
输出参数:
@recordcount = 2
@state = <NULL>
@totalpage = 1
////////////////////////////////////////////
我的那个也是这样子,而且在应用程序中确实取不到数据帮忙哦,谢谢
--这里缺BEGIN,
BEGIN
SELECT @state=0
RETURN
END
--设置起始结束ID
SET @startid=(@currentpage-1)*@pagesize
SET @endid=(@currentpage*@pagesize+1)
--开始取出数据