大家快来看看,为什么会出这样的怪问题(关于存储过程的)?????

springcloud 2002-12-31 01:59:41
存储过程代码:
-------------------------------------------
CREATE PROCEDURE proc_search5
@Page INT,
@PageSize INT,
@PageCount INT OUTPUT,
@RecordCount INT OUTPUT
AS
DECLARE @Total INT
DECLARE @ROWNO INT
DECLARE @MAXID INT
DECLARE @MINID INT

SET NOCOUNT ON
SET @PageCount=0
SET @RecordCount=0

SELECT @Total=COUNT(*) FROM ic_newStock,ic_Userinfo WHERE ic_newStock.Userid=ic_Userinfo.Userid
SET @PageCount=CEILING(CAST(@Total AS float)/@PageSize)
SET @RecordCount=@Total
IF @Total<1 OR @Page*@PageSize>@Total
RETURN @@ERROR

--SET @ROWNO=@Page*@PageSize
SET @ROWNO=(@Page-1)*@PageSize+1
SET ROWCOUNT @ROWNO
SELECT @MAXID=Infoid FROM ic_newStock,ic_Userinfo WHERE ic_newStock.Userid=ic_Userinfo.Userid ORDER BY Updtime DESC

SET @ROWNO=@Page*@PageSize
--SET @ROWNO=(@Page-1)*@PageSize+1
SET ROWCOUNT @ROWNO
SELECT @MINID=Infoid FROM ic_newStock,ic_Userinfo WHERE ic_newStock.Userid=ic_Userinfo.Userid ORDER BY Updtime DESC

SET ROWCOUNT 0
SELECT ic_newStock.Userid,Infoid,Cname,Tel,Model,Company,Encapsulation,Sno,Num,Price,Updtime,Note FROM ic_newStock,ic_Userinfo WHERE ic_newStock.Userid=ic_Userinfo.Userid AND Infoid>=@MINID AND Infoid<=@MAXID ORDER BY Updtime DESC
RETURN @@ERROR
-------------------------------------------
ASP调用代码:
-------------------------------------------
<%
PageSize=50
Page=trim(Request.QueryString("thePage"))
If Page="" Or IsEmpty(Page) Then Page="1"
Page=CLng(Page)
If Page<1 Then Page=1
Set rs=Server.CreateObject("ADODB.Recordset") '建立记录集对象
Set cmd=Server.CreateObject("ADODB.Command") '建立命令对象
cmd.CommandText="proc_search5" '存储过程名称
cmd.CommandType=4
Set cmd.ActiveConnection=Conn '数据库连接对象
cmd.Parameters.Append cmd.CreateParameter("@Page",3,1,,Page)
cmd.Parameters.Append cmd.CreateParameter("@PageSize",3,1,,PageSize)
cmd.Parameters.Append cmd.CreateParameter("@PageCount",3,2)
cmd.Parameters.Append cmd.CreateParameter("@RecordCount",3,2)
cmd.Execute
ReturnVal=cmd.Parameters(0)
PageCount=cmd.Parameters("@PageCount")
RecordCount=cmd.Parameters("@RecordCount")

If RecordCount>0 Then
set rs=cmd.Execute()
'...以下是显示语句
End If
%>
-------------------------------------------
出现的怪问题:
以下是一个结果报告:
-------------------------------------------
共找到1000条信息,当前显示为第201-250条,第5页/共20页,首页 前一页 后一页 末页
-------------------------------------------
当我让其显示第6页(以及后来页)时出错,而显示前5页均可,但是显示第4页时只显示30条记录。
请问这是什么原因?如何解决?
...全文
116 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
springcloud 2003-01-02
  • 打赏
  • 举报
回复
问题我自己已解决,只不过不是你们所说的错误!
愉快的登山者 2003-01-02
  • 打赏
  • 举报
回复
将PageSize=50改为40,30,60等试一下,看能够找到错误的规律;
检查数据库表ic_newStock,看是否存在不合理数据,重新生成此表,再试。
brook_huang 2003-01-02
  • 打赏
  • 举报
回复
可能是数据里有一些特殊字符
cainiao000 2003-01-02
  • 打赏
  • 举报
回复
帮您UP一下。
内容概要:本文研究了基于有限控制集模型预测控制(FCS-MPC)的三相并网逆变器双模态调控策略,深入探讨了电流与功率双模式预测控制之间的等效机理及其性能边界。通过Simulink仿真平台与Matlab编程实现,构建了一个融合电流预测和功率预测的闭环控制系统,旨在提升逆变器在复杂电网环境下的动态响应能力、电能质量和并网稳定性。文章系统阐述了FCS-MPC的基本原理及其在三相并网系统中的应用,提出了一种兼顾稳态精度与动态抗扰性的双模态控制架构,并通过多工况仿真验证了该策略在抑制电流畸变、实现功率无差拍响应等方面的优越性能,揭示了其在高渗透率新能源系统中稳定并网的应用潜力。; 适合人群:具备一定电力电子与自动控制理论基础,从事新能源发电、微电网控制、电力系统仿真等相关领域的科研人员及工程技术人员,尤其适合研究生及以上学历或工作1-3年的研发人员; 使用场景及目标:①用于研究三相并网逆变器在电网不平衡、电压波动等非理想条件下的高性能控制策略;②为实现高渗透率新能源系统的稳定并网提供技术参考与仿真验证手段;③支持学术论文复现、课题研究及工程项目前期技术探索; 阅读建议:建议结合提供的Simulink模型与Matlab代码进行同步仿真操作,深入理解双模态预测控制的设计逻辑与参数整定方法,重点关注不同工况下的系统响应特性,以掌握其在实际应用中的优势与局限性。

34,876

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧