ในการสร้างเว็บแอปพลิเคชันฟังก์ชั่นการท่องเว็บเป็นสิ่งจำเป็น ปัญหานี้เป็นเรื่องธรรมดามากในการประมวลผลฐานข้อมูล ในความเป็นจริงวิธีการปนเปื้อนนี้ใช้กับข้อมูลจำนวนเล็กน้อยเท่านั้น มาติดตามบรรณาธิการของช่องทางเทคโนโลยีใหม่ที่ไม่ถูกต้องเพื่อเรียนรู้เพิ่มเติม!
แหล่งที่มาของความคิด:
นำบันทึกจาก NTH ถึง MTH จากตารางเผยแพร่:
เลือก M-N-N+1 * ด้านบน
จากการเผยแพร่
ที่ไหน (ไม่ได้อยู่ใน
(เลือก ID N-1 TOP TOP
จากการเผยแพร่))
ต่อไปนี้เป็นขั้นตอนที่เก็บไว้:
การคัดลอกรหัสมีดังนี้:สร้างขั้นตอน pagination3
@tblname varchar (255), - ชื่อตาราง
@strgetfields varchar (1000) = '*', - คอลัมน์ที่จะส่งคืน
@fldname varchar (255) = '', - เรียงลำดับชื่อฟิลด์
@Pagesize int = 10, - ขนาดหน้า
@PageIndex int = 1, - หมายเลขหน้า
@docount bit = 0, - ส่งคืนจำนวนระเบียนทั้งหมดส่งคืนหากค่าไม่ 0
@orderType bit = 0, - ตั้งค่าประเภทการเรียงลำดับและหากค่าไม่ใช่ 0, คำสั่งลดลง
@strhere varchar (1500) = '' - เงื่อนไขการสืบค้น (หมายเหตุ: อย่าเพิ่มที่ไหน)
เช่น
ประกาศ @STRSQL VARCHAR (5000) - คำสั่งหัวเรื่อง
ประกาศ @strtmp varchar (110) - ตัวแปรชั่วคราว
ประกาศ @strorder varchar (400) - ประเภทประเภท
ถ้า @docount! = 0
เริ่ม
ถ้า @strows! = ''
SET @STRSQL = 'เลือกนับ (*) เป็นทั้งหมดจาก [' + @tblName + '] โดยที่' + @strows
อื่น
set @strsql = 'เลือกนับ (*) เป็นทั้งหมดจาก [' + @tblname + ']'
จบ
-รหัสข้างต้นหมายความว่าหาก @docount ผ่านไปไม่ใช่ 0 จำนวนทั้งหมดจะถูกดำเนินการ รหัสทั้งหมดต่อไปนี้เป็นกรณีที่ @docount คือ 0:
อื่น
เริ่ม
ถ้า @ordertype! = 0
เริ่ม
ตั้งค่า @strtmp = '<(เลือกขั้นต่ำ'
set @strorder = 'order by [' + @fldname + '] desc'
-หาก @ordertype ไม่ใช่ 0 จากนั้นดำเนินการตามลำดับจากมากไปน้อย ประโยคนี้สำคัญมาก!
จบ
อื่น
เริ่ม
set @strtmp = '> (เลือกสูงสุด'
set @strorder = 'order by [' + @fldname + '] asc'
จบ
ถ้า @PageIndex = 1
เริ่ม
ถ้า @strows! = ''
set @strsql = 'เลือก top' + str (@pagesize) + '' + @strgetfields + 'จาก [ + @tblname +'] โดยที่ ' + @strows +' ' + @strorder
อื่น
set @strsql = 'เลือก top'+ str (@pagesize)+ ''+ @strgetfields+ 'จาก ['+ @tblname+ ']'+ @strorder
-หากเป็นหน้าแรกให้เรียกใช้รหัสด้านบนซึ่งจะเพิ่มความเร็วในการดำเนินการ
จบ
อื่น
เริ่ม
set @strsql = 'เลือก top' + str (@Pagesize) + '' +@strgetfields + 'จาก ['
+ @tblname + '] โดยที่ [' + @fldname + ']' + @strtmp + '(['
+ @fldName + ']) จาก (เลือก top' + str ((@pageindex-1)*@pagesize) + '['
+ @fldname + '] จาก [' + @tblname + ']' + @strorder + ') เป็น tbltmp)'
+ @strorder
ถ้า @strows! = ''
set @strsql = 'เลือก top' + str (@Pagesize) + '' +@strgetfields + 'จาก ['
+ @tblname + '] โดยที่ [' + @fldname + ']' + @strtmp + '(['
+ @fldName + ']) จาก (เลือก top' + str ((@pageindex-1)*@pagesize) + '['
+ @fldname + '] จาก [' + @tblname + '] โดยที่' + @strows + ''
+ @strorder + ') เป็น tbltmp) และ' + @strows + '' + @strorder
จบ
จบ
EXEC (@STRSQL)
-print @strsql
ไป
ผ่านเนื้อหาที่แนะนำโดยบรรณาธิการของช่องทางเทคโนโลยีใหม่ฉันเชื่อว่าทุกคนมีความเข้าใจที่แน่นอน หากคุณต้องการทราบเนื้อหาทางเทคนิคเพิ่มเติมโปรดดำเนินการต่อเพื่อให้ความสนใจกับช่องทางเทคโนโลยีใหม่!