1. 程式人生 > >mybatis,sqlserver分頁

mybatis,sqlserver分頁

以前專案都是mysql加mybatis的,新的一個專案客戶要求用sqlserver,好在大部分sql都一樣,不過還是有些sql語句不同,比如分頁

首先看看sqlserver的分頁原理

例:10到20的資料分頁

 SELECT top 10 * 
 	from tablename
 where
 	id not in (
 		select top 10 id from tablename
 	)
 order by id

在mybatis中,用pagesize,pagestart去替換10,20

SELECT top ${pagesize} * 
 	from tablename
 where
 	id not in (
 		select top ${pagestart} id from tablename
 	)
 order by id


 常見異常
 1.sqlserver @P0 附近有語法錯誤
 把#{var}改成${var}  
 原因
 #{var}傳入引數會被裝飾成 "var"可以防止sql注入問題
 比如num=10,上面sql語句就會被解釋成SELECT TOP "10" FROM tablename 這樣就會報錯
 ${var}傳入引數會直接顯示 會有發生sql注入問題
 同樣num=10,上面sql語句就會被解釋成SELECT TOP 10 FROM   這樣就沒錯  

相關推薦

mybatissqlserver

以前專案都是mysql加mybatis的,新的一個專案客戶要求用sqlserver,好在大部分sql都一樣,不過還是有些sql語句不同,比如分頁 首先看看sqlserver的分頁原理 例:10到20的資料分頁 SELECT top 10 * from table

mybatis下的支持所有的數據庫

支持 targe bstr dna error class ati clas 調用 大家都知道,mybatis的自帶分頁方法只是邏輯分 頁,如果數據量很大,內存一定會溢出,不知道為什麽開源組織不在裏面集成hibernate的物理分頁處理方法!在不修改mybatis源代碼的情

oracle,mysql,sqlserver查詢附實體類

 最近簡單的對oracle,mysql,sqlserver2005的資料分頁查        (一)、 mysql的分頁查詢       &n

mybatis增刪改查sql,新增可以返回id

** mybatis增刪改查sql,帶分頁,新增可以返回id <resultMap type="com.spring.pojo.T_Form" id="T_FormMap"> <result column="formId" property="formId"/

MyBatis功能的實現(陣列、sql、攔截器RowBounds

前言:學習hibernate & mybatis等持久層框架的時候,不外乎對資料庫的增刪改查操作。而使用最多的當是資料庫的查詢操

spring boot 1.4.2.RELEASE+Thymeleaf+mybatis 整合通用maper外掛:

spring boot 1.4.2.RELEASE+Thymeleaf+mybatis 整合通用maper,與分頁外掛: pom.xml <parent> <groupId>org.springframe

mybatis邏輯導航

mybatis是非常優秀的半orm框架,比hibernate更容易控制,效能也很好,但mybatis官方並沒提供分頁功能,需要自己實現,下面提供一種物理分頁的實現思路: (基於sping、spring mvc、mybatis的整合,將PO) 1. 編寫一個Pagina

mybatis sqlserver 查詢報錯:'@P0' 附近有語法錯誤

錯誤的sql <select id="searchEcoInfoPaged" resultMap="cm"> select TOP #{rows} * from eco_info where ID in ( SELECT to

MyBatis多條件查詢返回總記錄數

 <!-- 通過多條件分頁查詢,返回總記錄數 -->   <select id="selectPageCount" parameterType="page" resultType="

mybatis-Plus3.0 整合spring配置和多個dao的掃描(官方文件未說明的事項)

mybatis-Plus 的配置是比較簡單的,但有一些東西官方文件是沒有說明的。 比如要掃描多個dao在spring下怎麼配置,

javascript如何處理很多數據類似切換

result 個數 mat 表數據 span eset 如何 取整 data 需求:一個用戶列表數據,如果對應列表數據大於10個,就每10個保存到二維數組,後面不足10個的依然放在二維數組尾部 用處:模擬分頁,或者局部刷新 var obj=[ {

MyBatis+mysql 簡單

system 組件 註意 .class com type limit batis println 註意:limit不能跟動態內容 <select id="fenYe" parameterType="int" resultType="com.xdl.bean.Emp"&

使用插件pagehelper在mybatis中實現查詢

通過 否則 跟著 jar包 自動識別 lds equals 數值 可用 快速參考步驟:   1.  引入jar包 <dependency>  <groupId>com.github.pagehelper</groupId>  <a

高效的SQLSERVER方案

以及 時序 增加 運行 因此 enc 擴展 from 當前頁 Sqlserver數據庫分頁查詢一直是Sqlserver的短板,假設有表ARTICLE,字段ID、YEAR,數據53210條(客戶真實數據,量不大),分頁查詢每頁30條,查詢第1500頁(即第45001-4503

MiniUI前臺實現源碼

MiniUI 假分頁背景對於數據較少,無需後臺分頁的需求,可使用以下解決方案方案MiniUI提供了監聽事件,特別方便即可實現。源碼mini.parse(); var grid = mini.get("datagridTable"); // 獲取所有數據和總記錄數 { tot

使用 row_number 進行sqlserver

info sele wid not in lse sqlserver ID from BE 例子: select top 5* from (SELECT ROW_NUMBER() OVER(ORDER BY ID ASC) AS rowid,* FROM Customer

thinkphp框架數據動態緩存後或數據已讀取出來怎麽辦

職位 count function his 獲取 讀取 nbsp 推薦 php框架 //讀取緩存後賦值到數組,通過array_slice函數處理,如: $blog = S(‘blogname‘); //賦值 $count = count($blog); //條數統計

SpringBoot+Mybatis配置Pagehelper插件實現自動

pri ldb tar pos method prop 註意 dss stk SpringBoot+Mybatis配置Pagehelper分頁插件實現自動分頁 **SpringBoot+Mybatis使用Pagehelper分頁插件自動分頁,非常好用,不用在自己去計算和組裝

TP5中即點即改json單刪

har ont r+ sha static href ret lang turn HTML頁面: <!doctype html><html lang="en"><head> <meta charset="UTF-8">

mybatis plus的外掛在前臺網站使用

首先匯入css和js <link href="/static/css/bootstrap.min.css" rel="stylesheet"> <script src="/static/js/jquery-2.1.1.min.js"></s