两分页存储过程

S32K144之芯片锁死解锁——进入HardFault S32K144之芯片锁死解锁——进入HardFault 最近遇到因为软件代码问题导致进入HardFault,从而使芯片锁死,来简述具体现象以及最终的解锁方法。 导致原因:如下图,在进行Gpio的相关配置,case后面没有break语句,导致芯片进入HardFault。 现象1:reset引脚持续为低,reset指示灯常亮。如果掉电后重新上电,通过示波器抓取reset引脚的波形,会有510us左右或者29ms左右的低电平脉冲出现,一般会出现两三次左右并且没有规矩,持续几秒的高电平之后,reset脚再次被拉低 阅读详情

分页存储过程  (一)  (这个速度快点 建议用这个)


CREATE  PROCEDURE hhhb_PageView1
         @PageIndex INT,                             --页面索引,从datagrid中获取
         @PageSize  INT,                              --页面显示数量,从datagrid中获取
         @RecordCount INT OUT,                --返回记录总数
         @PageCount INT OUT,                   --返回分页后页数
         @strGetFields nvarchar(1000),         -- 需要查询的列 首尾要有空格
         @tableName nvarchar(500) ,           --表名称 首尾要有空格
         @ID nvarchar(100),                          --主键,(为表的主键)
         @strWhere  nvarchar(1000) ='',        -- 查询条件 (注意: 不要加 where)
         @sortName nvarchar(50) =' asc ' ,     --排序方式
         @orderName nvarchar(100)              --父级查询排序方式


AS
declare @countSelect nvarchar(2000) 
--设置统计查询语句
if len(@strWhere) =0
--如果没有查询条件
    begin
        set @countSelect=N'SELECT @CountRecord = COUNT(*)  FROM '+@tableName
    end
else
--否则
    begin
        set @countSelect=N'SELECT @CountRecord = COUNT(*)  FROM '+@tableName+' where '+@strWhere
    end
--执行并返回总数
exec sp_executesql @countSelect,N'@CountRecord int output',@RecordCount output
SET @PageCount = CEILING(@RecordCount * 1.0 / @PageSize)

SET NOCOUNT ON

DECLARE @SQLSTR NVARCHAR(3000)
--实际总共的页码小于当前页码 或者 最大页码
if @PageCount>=0
    --如果分页后页数大于0
    begin
        if @PageCount<=@PageIndex and  @PageCount>0   --如果实际总共的页数小于datagrid索引的页数
            --or @PageCount=1
            begin
                --设置为最后一页
    set @PageIndex=@PageCount-1
            end
        else if @PageCount<=@PageIndex and  @PageCount=0
            begin
                set @PageIndex=0;
            end
    end

IF @PageIndex = 0 OR @PageCount <= 1  --如果为第一页
    begin
        if len(@strWhere) =0
            begin
                SET @SQLSTR =N'SELECT TOP '+STR( @PageSize )+@strGetFields+'  FROM  '+@tableName+' ORDER BY '+@orderName+@sortName
            end
        else
            begin
                SET @SQLSTR =N'SELECT TOP '+STR( @PageSize )+@strGetFields+'  FROM  '+@tableName+' where '+@strWhere+' ORDER BY '+@orderName+@sortName
            end
    end
ELSE IF     @PageIndex = @PageCount - 1 --如果为最后一页           
    begin
        if len(@strWhere) =0
            begin
                SET @SQLSTR =N' SELECT '+@strGetFields+'  FROM '+@tableName+' where '+@ID+' not in  ( SELECT TOP '+STR(/*@RecordCount - */@PageSize * @PageIndex )+@ID+'  FROM  '+@tableName+'ORDER BY '+@orderName+@sortName+' )   ORDER BY '+@orderName+@sortName
            end
        else
            begin
                SET @SQLSTR =N' SELECT '+@strGetFields+'  FROM '+@tableName+' where '+@ID+' not in  ( SELECT TOP '+STR(/*@RecordCount - */ @PageSize * @PageIndex )+@ID+'  FROM  '+@tableName+' where '+@strWhere+'ORDER BY '+@orderName+@sortName+' )  and '+@strWhere+' ORDER BY '+@orderName+@sortName
            end
    end
ELSE                                                              --否则执行 
    begin
         if len(@strWhere) =0
            begin
                SET @SQLSTR =N' SELECT TOP  '+STR( @PageSize )+@strGetFields+' FROM '+@tableName+' where '+@ID+' not in  ( SELECT TOP '+STR( /*@RecordCount - */@PageSize * @PageIndex )+@ID+'  FROM  '+@tableName+' ORDER BY '+@orderName+@sortName+' )  ORDER BY '+@orderName+@sortName
            end
         else
            begin
                SET @SQLSTR =N' SELECT TOP  '+STR( @PageSize )+@strGetFields+' FROM '+@tableName+' where '+@ID+' not in  (SELECT TOP '+STR(/*@RecordCount - */ @PageSize * @PageIndex )+@ID+'  FROM  '+@tableName+' where '+@strWhere+' ORDER BY '+@orderName+@sortName+' )and '+@strWhere+'ORDER BY '+@orderName+@sortName
            end
    end

EXEC (@SQLSTR)
/*print (@SQLSTR)*/
set nocount off
GO

 ===========================================================================

///////////////////////////////////////////////////////////////////////////////
分页存储过程  (二)  


       CREATE proc hhhb_PageView 
       @a_TableList Varchar(200),
       @a_TableName Varchar(30),
       @a_SelectWhere Varchar(500),
       @a_SelectOrderId Varchar(20),
       @a_SelectOrder Varchar(50),
       @a_intPageNo int,
       @a_intPageSize int,
       @RecordCount int OUTPUT
as
   /*定义局部变量*/
   declare @intBeginID         int
   declare @intEndID           int
   declare @intRootRecordCount int
   declare @intRowCount        int
   declare @TmpSelect          NVarchar(600)
   /*关闭计数*/
   set nocount on
  
   /*求总共根贴数*/

   select @TmpSelect = 'set nocount on;select @SPintRootRecordCount = count(*) from '+@a_TableName+' '+@a_SelectWhere
   execute sp_executesql
             @TmpSelect,
             N'@SPintRootRecordCount int OUTPUT',
             @SPintRootRecordCount=@intRootRecordCount OUTPUT

select @RecordCount = @intRootRecordCount

   if (@intRootRecordCount = 0)    --如果没有贴子,则返回零
       return 0
      
   /*判断页数是否正确*/
   if (@a_intPageNo - 1) * @a_intPageSize > @intRootRecordCount
      return (-1)

   /*求开始rootID*/
   set @intRowCount = (@a_intPageNo - 1) * @a_intPageSize + 1
   /*限制条数*/

   select @TmpSelect = 'set nocount on;set rowcount @SPintRowCount;select @SPintBeginID = '+@a_SelectOrderId+' from '+@a_TableName+' '+@a_SelectWhere+' '+@a_SelectOrder
   execute sp_executesql
             @TmpSelect,
             N'@SPintRowCount int,@SPintBeginID int OUTPUT',
             @SPintRowCount=@intRowCount,@SPintBeginID=@intBeginID OUTPUT


   /*结束rootID*/
   set @intRowCount = @a_intPageNo * @a_intPageSize
   /*限制条数*/

   select @TmpSelect = 'set nocount on;set rowcount @SPintRowCount;select @SPintEndID = '+@a_SelectOrderId+' from '+@a_TableName+' '+@a_SelectWhere+' '+@a_SelectOrder
   execute sp_executesql
             @TmpSelect,
             N'@SPintRowCount int,@SPintEndID int OUTPUT',
             @SPintRowCount=@intRowCount,@SPintEndID=@intEndID OUTPUT


if @a_SelectWhere='' or @a_SelectWhere IS NULL
   select @TmpSelect = 'set nocount off;set rowcount 0;select '+@a_TableList+' from '+@a_TableName+' where '+@a_SelectOrderId+' between '
else
   select @TmpSelect = 'set nocount off;set rowcount 0;select '+@a_TableList+' from '+@a_TableName+' '+@a_SelectWhere+' and '+@a_SelectOrderId+' between '

if @intEndID > @intBeginID
   select @TmpSelect = @TmpSelect+'@SPintBeginID and @SPintEndID'+' '+@a_SelectOrder
else
   select @TmpSelect = @TmpSelect+'@SPintEndID and @SPintBeginID'+' '+@a_SelectOrder

   execute sp_executesql
             @TmpSelect,
             N'@SPintEndID int,@SPintBeginID int',
             @SPintEndID=@intEndID,@SPintBeginID=@intBeginID

   return(@@rowcount)
   --select @@rowcount

GO

////////////////////////////////////////////////////////////////////////////////////////////////

VS(QT)调用Matlab函数的方法 调试–>窗口–>异常设置–>Win32 Exceptions全部不要勾选。选择Microsoft Visual C++ 2017。将生成的.h和.lib分别放置在对应的文件夹。输入mex -setup C++输入deploytool选择。选择Realse x64。 阅读详情

相关推荐

[原创]Linux 802.11n CSI tool Monitor模式

Linux 802.11n CSI tool Monitor模式 使用AP模式的缺陷在于ping 命令速度比较慢,且不能精确控制发送的参数,比如接收的包数量是不可控的。Monitor模式可以调制发送速率、发包数量、发送天线个数、HT模式、short/long guard interval等等,因此调通Monitor模式是必须的。期间参考了博主沃一德的CSI Tool安装使用讲解,对他的工作表示感...

u014645508的博客 1万+

【原创】两种分页控件的实现

两种分页控件的实现 最近因项目需要,封装了两个分页控件。两个分页控件的工作机制相同,只是界面风格不同。现在拿来和大家分享一下。如果大家有什么好的意见和建议,欢迎指正。 分页控件采用UserControl的形式进行封装,主要维护记录总数,每页行数和当前页索引等数据,提供翻页事件供用户进行订阅和实现。和列表控件分离确保了分页控件的可移植性,可以支持和多种列表的结合。 第一

永远年轻,永远热泪盈眶 2576

最新版电子发票样式html+css--普通发票+增值发票

【代码】最新版电子发票样式html+css--普通发票+增值发票。

weixin_44110923的博客 3681

在存储过程中分页

/*--用存储过程实现的分页程序--邹建 2003.09(引用请保留此信息)--*//*--调用示例 exec p_show 地区资料 exec p_show 地区资料,5,3,地区编号,地区名称,助记码,地区编号--*/if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[p_show]) a

BillyWuyg的专栏 1028

Zabbix安装与部署 系统环境:centos7.0

Zabbix安装与部署 系统环境:centos7.0

weixin_42485027的博客 2600

EDA环境下的LSF进阶调优:如何为Cadence/VCS等工具正确配置cgroups与daemon starter

本文深入探讨了在EDA环境中如何为Cadence/VCS等工具正确配置LSF的cgroups与daemon starter,解决资源分配与特殊应用兼容性问题。通过详细解析cgroups技术、daemon starter配置及混合资源管理策略,帮助提升LSF集群的效率和稳定性,特别适用于高性能计算和芯片设计场景。

weixin_33724046的博客 461

SQL 存储过程

SQL 存储过程的学习

paoe1612205661的博客 2万+

Python环境搭建和LabVIEW中的调用

本文主要介绍Python相关的环境搭建、Anaconda的使用以及在LabVIEW中调用Python的方法。

lvxisi的博客 6390

什么是存储过程

什么是存储过程:存储过程可以说是一个记录集吧,它是由一些T-SQL语句组成的代码块,这些T-SQL语句代码像一个方法一样实现一些功能(对单表或多表的增删改查),然后再给这个代码块取一个名字,在用到这个功能的时候调用他就行了。存储过程的好处:1.由于数据库执行动作时,是先编译后执行的。然而存储过程是一个编译过的代码块,所以执行效率要比T-SQL语句高。2.一个存储过程在程序在网络中交互时可以替代大堆...

qq_41786318的博客 3万+

ArcGIS Pro 3.4 二次开发 - 布局

本文介绍了在ArcGIS Pro SDK 3.4和.NET 8环境下操作布局工程项的相关方法。主要内容包括:引用布局工程项和关联布局,在新视图中打开或激活已有布局视图,引用活动布局视图,导入/移除布局工程项,创建基本布局或带参考线的自定义布局,修改布局页面尺寸,以及创建圆形图形元素等操作。重点演示了如何通过CIM(Core Infrastructure Model)进行高级布局配置,并详细说明了圆形图形元素的创建过程,包括几何构建、符号设置和图形生成。所有涉及UI线程的操作都遵循ArcGIS Pro SDK

Winemonk 795

SAP 采购订单入库——移动类型

业务场景:采购入库,实物入库至仓库,然后系统同步过账。MIGO:收货、采购订单。 MVT:101 入库,---库存增加。 MVT:移动类型,就是代表业务场景,(比如入库、发货,成本中心发、工单发、报废、盘赢、盘亏等等) 移动类型 1、正向采购入库:101 2、反向冲销(MIGO)102:与101相反,用于错误操作的反向冲销。参考原凭证,全部进行一...

willieyuan的博客 7781

通用的数据分页的存储过程

--一个通用的数据分页的存储过程 CREATE PROCEDURE sp_page @tb varchar(20), --表名 @col varchar(20), --按该列来进行分页 @coltype bit, --@col列的类型,0-数字类型,1-字符类型 @collist varchar(800),--要查询出的字段列表 @selecttype int, --查询类型,1-前页,2-后

半个程序员(Donald.Hua)的专栏 557

注意力机制模块:CA(坐标注意力)二次创新:融合深度可分离卷积,打造 CADS 模块

本文提出CADS模块,将坐标注意力(CA)与深度可分离卷积(DSC)深度融合,优化移动端AI部署效率。通过重构CA的计算范式,用深度卷积替代传统1×1卷积,在保持精度的同时显著降低计算开销。文章深入分析了CA的计算瓶颈和DSC的实际效率问题,详细阐述了CADS的设计原理与PyTorch实现,并提供了多组性能对比数据。该模块可直接应用于YOLO、UNet等主流模型,为移动端AI部署提供高效解决方案。

ZXSXJ的博客 96

SqlServer存储过程入门

什么是存储过程? 存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。 存储过程中可以包含逻辑控制语句和数据操纵语句,它可以接受参数、输出参数、返回单个或多个结果集以及返回值。 由于存储过程在创建时即在数据库服务器上进行了编译并存储在数据库中,所以存储过程运行要比单个的SQL语句块要快。同时由于在调用时只需用提供存...

KeithRong的博客 1788

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Oracle分页的存储过程__返回页总数

<br />create or replace package AutoPagenation is<br />  -- Author  : MARK<br />  -- Created : 2010-12-30 11:23:18<br />  -- Purpose : <br />  <br />  -- Public type declarations<br />  -- 返回结果集的游标<br />  TYPE typeCousor IS REF CURSOR;<br />      <br />   

mgj200808的专栏 1088

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

存储过程

在开发应用程序时,为了便于修改和扩充,经常会将负责不同功能的语句集中起来,而且按照用途分别独立放置,以便能够返回调用,而这些独立放置且拥有不同功能的语句,就是 过程(Procedure)。存储过程 Procedure是一组为了完成特定功能的 SQL语句集合。经编译后存储在数据库中,用户通过指定存储过程名称和参数来执行存储过程。存储过程是一种独立存储在数据库内的对象,可以接受输入、输出参数,返回单个或多个结果集及返回值,由应用程序通过调用执行。

qq_61709335的博客 1718

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Oracle存储过程调用带参的存储过程

Oracle存储过程包含三部分:过程声明,执行过程部分,存储过程异常。 Oracle存储过程可以有无参数存储过程和带参数存储过程。  一、无参程序过程语法 1 create or replace procedure NoParPro 2 as  ; 3 begin 4 ; 5 exception     //存储过程异常6     ; 7 end; 8          二、带参存储过程

kevinelven的博客 3万+

什么是mysql存储过程_mysql 存储过程

存储过程1.什么是存储过程一组可编程函数,是为了满足特定功能的SQL语句集存储过程就是具有名字的一段代码,用来完成个特定的功能创建的存储过程保存在数据库的数据字典中​2.为什么要用存储过程将重复性很高的操作,封装到一个存储过程中,简化了对这些SQL的调用批量处理统一接口,确保数据安全相对于Oracle来说,Mysql的存储过程相对功能较弱,使用较少​3.存储过程的创建和调用1. delimiter...

weixin_31470259的博客 9113

java 分页 存储过程_高效分页存储过程

存储过程与页面调用如下:CREATEPROCEDUREsearch_sp@tblNamevar存储过程与页面调用如下:CREATE PROCEDURE search_sp@tblName varchar(255), -- 表名@strGetFields varchar(1000) = '*', -- 需要返回的列@fldName varchar(255)='', -- 排序的字段名@PageSiz...

weixin_39908616的博客 192

InnoDB 页的结构与一条记录的存储过程

页是InnoDB管理存储空间的基本单位,一个页的大小一般是16KB。

dnuiking的博客 1279

存储过程的简单实现

前言 思考:一般我们的数据都是存储在数据库里面,对于常规的CRUD操作都是用代码实现,比如使用PHP做项目,所有的数据处理都需要主动操作代码实现。如果我们现在有一项目,业务需要在用户下单后,对用户的订单进行分润处理,比如在每个月的21号,对上个月所有的订单按设置的规则进行分润处理,当然shll脚本也可以实现,但是今天我们说的是如何通过数据库“存储过程”和“事件”来实现。 一、简单介绍 如下图,是MySQL官网所介绍的https://dev.mysql.com/doc/refman/5.5/en/stor

大红猫 1406

又是分页存储过程

给浩方的评论系统写的.实现了四个分页状态1 请求页 = 第一页2 请求页 3 请求页 > 总页数/24 请求页 = 最后页不过感觉 最后页的实现不是很好 不知道有什么简单的办法没.还有 但请求页 = 总页数/2 的时候又不知道用什么来比较简单.本来天极上面有一篇分析的文章上次看了 忘了 再页找不到了.看来有必要自己写个小系统来管理自己的东西了./*  作者: SLIGHTBOY  建立日期

纯净的天空 1050

SQL Server分页查询存储过程

--分页存储过程create PROCEDURE [dbo].[commonPagination]@columns varchar(500), --要显示的列名,用逗号隔开 @tableName varchar(100), --要查询的表名 @orderColumnName varchar(100), --排序的列名 @order varchar(50), --排序的方式,升序为asc...

bahongying2053的博客 198

C# 如何创建存储过程以及调用存储过程

选择要创建的数据库,新建查询 ①创建一个没有参数的存储过程 例如我创建一个查询用户帐号和密码的存储过程 CREATE PROC UserProc AS //这个地方as可以省略不写 BEGIN //要写begin、end都要写、要么都不写 SELECT Account,Password FROM [User] END go 创建完成后我们可以在数据库的可编程性-存储过程中看到我们所创建的存储过程。 下面是在sql server 中执行不带参宿的存储过程,我们可以看到执行出来的结果。 执行语句为:

音尘啊 6211

存储过程返回结果集_存储过程

在开发SQL Server时,为了修改和扩充方便,经常会将负责不同功能的语句集中起来并且按照用途分别独立存储,以便能够反复调用,这些独立存储且拥有不同功能的语句即是“存储过程”。 存储过程属于数据库对象,是一种高效的、安全的访问数据库的方法。主要用于提高数据库中检索数据的速度,也经常被用来访问数据或管理被修改的数据。存储过程包含一些 T-SQL 语句并以特定的名称存储在数...

weixin_28728279的博客 3713

sql 分页存储过程

USE EplusSystem--DROP PROC PageGO CREATE PROCEDURE Page --分页存储过程@TableName VARCHAR(100),--表名@PageSize INT,--页大小@PageIndex INT,--页号@StrWhere VARCHAR(100),--条件@OrderField VARCHAR(100)--排列ASDECLA...

diaosui7664的博客 115
上一篇: 在数据库中存储 BLOB 数据的缺点
下一篇: 数字转英文(1200=> one thousand two HUNDRED)Sql函数
hhfh
博客等级 码龄26年 13粉丝 19原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值