1. 程式人生 > >Sqlserver,MySql 通用分頁儲存過程

Sqlserver,MySql 通用分頁儲存過程

MySql 分頁儲存過程

CREATE PROCEDURE ProcPage(
in tableName varchar(20),#表名
in showField varchar(100),#要顯示的列名
in whereText varchar(500),#where條件(只需要寫where後面的語句)
in orderText varchar(500),#排序條件(只需要寫order by後面的語句)
in pageSize int,#每一頁顯示的記錄數
in pageIndex int,#當前頁
out dataCount int#總記錄數
)
BEGIN

if (pageSize<1)then
  set pageSize=20;
end if;

if (pageIndex < 1)then
  set pageIndex = 1;
end if;

if(LENGTH(whereText)>0)then
	set whereText=CONCAT(' where 1=1 ',whereText);
end if;

if(LENGTH(orderText)>0)then
	set orderText = CONCAT(' ORDER BY ',orderText);
end if;

set @strsql = CONCAT('select ',showField,' from ',tableName,' ',whereText,' ',orderText,' limit ',pageIndex*pageSize-pageSize,',',pageSize);

prepare stmtsql from @strsql;
execute stmtsql;
deallocate prepare stmtsql;

set @strsqlcount=concat('select count(1) as count into @datacount from ',tableName,'',whereText);
prepare stmtsqlcount from @strsqlcount;
execute stmtsqlcount;
deallocate prepare stmtsqlcount;
set 
[email protected]
; END;

MySql 迴圈使用

相關推薦

Sqlserver,MySql 通用儲存過程

MySql 分頁儲存過程 CREATE PROCEDURE ProcPage( in tableName varchar(20),#表名 in showField varchar(100),#要顯示的列名 in whereText varchar(500),#where條件(只需要寫where後面的語句)

MySQL使用limit的通用儲存過程

輸出的結果:通用分頁儲存過程的程式碼:@a   代表要查詢的列名@b  代表要查詢的表名@c   代表從多少個開始@d   代表每次顯示多少條資料DELIMITER $$ USE `t204`$$ DROP PROCEDURE IF EXISTS `pro_01`$$

兩個sql server 2000的通用儲存過程

 第一個支援唯一主鍵,第二支援多主鍵,測試過,效率一般 CREATE PROC P_viewPage    /*        no_mIss 分頁儲存過程 2007.2.20  QQ:34813284        適用於單一主鍵或存在唯一值列的表或檢視         

Sql2000 版通用儲存過程

 CREATEPROCEDURE  sys_QuickSortPaging(     @Tablenvarchar(4000),                            --表名(必須)@PrimaryKeyFieldnvarchar(50),         

mysql簡化通用儲存過程

#當前頁(起始數) pageindex #每一頁顯示的記錄數(顯示數) prows DELIMITER $$ #其實就是告訴Mysql編輯器,這段命令是否可以結束,mysql是否可以執行。 預設情況下,delimiter為;號。 CREATE /*

mysql儲存過程一步一步實現

1.  CREATE DEFINER=`root`@`localhost` PROCEDURE `P_HoverTreePages`( IN `TableName` VARCHAR(200), IN `FieldList` VARCHAR(2000) , IN `Pr

-儲存過程5種寫法 sqlserver

在SQL Server資料庫操作中,我們常常會用到儲存過程對實現對查詢的資料的分頁處理,以方便瀏覽者的瀏覽。本文我們總結了五種SQL Server分頁儲存過程的方法,並對其效能進行了比較,接下來就讓我們來一起了解一下這一過程。 建立資料庫data_Test : create

sqlServer儲存過程的呼叫

現象: sqlServer的分頁一直相對比較複雜。這裡使用儲存過程實現分頁邏輯 解決辦法 1:action獲取查詢的條件,初始化每頁顯示的大小,page代表當前檢視第幾頁,預設設定為第一頁。rows表示每頁顯示的大小。sort代表查詢按什麼欄位排序 如果要

通用的可帶查詢條件的SQL語句的儲存過程(2)

程式碼二: CREATE PROCEDURE pagination @tblName varchar(255), – 表名 @strGetFields varchar(1000) = ‘*’, – 需要返回的列 @fldName varch

MySql 儲存過程

DELIMITER $$ #修改分隔符為 $$ DROP PROCEDURE IF EXISTS sp_MvcCommonDataSource$$ #分隔符 CREATE PROCEDURE sp_MvcCommonDataSource ( #輸入引數 _fields

MYSQL多表儲存過程

CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_AllSiteSearch`(IN pagesize int,IN pageindex int,IN skey varchar(100),IN dt varchar(10),IN

SqlServer支援多表關聯的儲存過程

具體程式碼如下所示: CREATE PROCEDURE p_GetPager @TotalCount INT OUTPUT, --總記錄數 @TotalPage INT OUTPUT, --總頁數 @Table NVARCHAR(1

Vs呼叫儲存過程

/// <summary>         /// 顯示+分頁+模糊查詢         /// </summary>  &n

MSSQL資料庫儲存過程

create procedure [dbo].[p_splitpage] @sql nvarchar(4000), @currentpage int=2, @pagesize int=10, @recordcount int=0 output, @pagecount int=0 out

儲存過程

-- ============================================= -- Author: <Author,,Name> -- Create date: <Create Date,,> -- Description: &l

【資料庫效能測試實戰】測試不同儲存過程在10w,100w以及1000w資料量下面的表現

前言 資料庫的效能與每一行程式碼息息相關,所以,每次寫程式碼可以考慮一下在不同級別的資料量下面測試一下效能。 本文參考了: Postgresql生成大量測試資料 以及 準備測試用資料 此次測試我們將分別用10w,100w以及1000w級別的表來測試,下面先建立

增刪改查儲存過程

--建立資料庫 CREATE DATABASE PROCDB GO --使用資料庫 GO USE PROCDB GO --建立表供儲存過程的實現 CREATE TABLE STUDENTINFOS ( ID INT PRIMARY KEY IDENTITY, S_NAME NVARCHA

C# DataGridView功能(SQL儲存過程實現)

{            dtStaff.Clear();            SqlConnection conn = new SqlConnection(Param_Class.Param_DB.strConn);            SqlDataAdapter Sda = new SqlDataA

C#呼叫SQL Server儲存過程

以SQL Server2012提供的offset ..rows fetch next ..rows only為例e.g.表名:Tab1 ---------------------------------- ID Name 1 tblAttributeGroupDetail 2

EntityFramework呼叫儲存過程

感謝博主https://www.cnblogs.com/qk2014/p/6824103.html 此文講述mvc4+entityframework6+sqlserver2008環境下呼叫儲存過程,實現分頁。 1、分頁儲存過程程式碼如下: 分頁原理用的row_nu