mysql索引页为什么是16k

mysql索引页为什么是16k,第1张

mysql索引页是16k原因:MySQL的varchar索引只支持不超过768个字节。

在数据量太小的情况,建立索引确实有可能比没有建前费时。索引的使用,一般是应用在对大量数据查询中,如果都能数得过来,没必要建。如果你设置的比赛距离就是30米,那汽车发挥不出它的优势,并且表现出来的效果可能还不如人跑的速度快。

索引列:

可以基于数据库表中的单列或多列创建索引。多列索引可以区分其中一列可能有相同值的行。如果经常同时搜索两列或多列或按两列或多列排序时,索引也很有帮助。例如,如果经常在同一查询中为姓和名两列设置判据,那么在这两列上创建多列索引将很有意义。

检查查询的WHERE和JOIN子句。在任一子句中包括的每一列都是索引可以选择的对象。对新索引进行试验以检查它对运行查询性能的影响。考虑已在表上创建的索引数量。最好避免在单个表上有很多索引。检查已在表上创建的索引的定义。最好避免包含共享列的重叠索引。

// 分页

page = 0// 默认页

String p = (String) request.getParameter("page")// 当前页

if (p != null &&!"".equals(p)) {

page = Integer.parseInt(p)

}

int size = list.size()// 总数据

int pagesize = 8// 每页显示数量

maxSize = size / pagesize// 最大页数

if (size % pagesize != 0) { // 不能被整除 +1 进一法 1.5分两页 1.5默认变成1

maxSize = maxSize + 1

}

if (page >maxSize) {

page = maxSize

}

if (page <1) {

page = 1

}

int state = (page - 1) * pagesize// 开始

int end = state + pagesize// 结束

if (end >= size) {

end = size

} // 0-1

list = list.subList(state, end)

//页面

<table width="100%" border="0" cellspacing="0" cellpadding="0">

<tr>

<td align="center">

<a href="<%=path%>/PersoninfoAction.action?page=0">首页</a>

<a href="<%=path%>/PersoninfoAction.action?page=${page-1 }">上一页</a>

<c:forEach begin="1" end="${maxSize}" step="1" varStatus="i">

<a href="<%=path%>/PersoninfoAction.action?page=${i.index }">[${i.index

}]</a>

</c:forEach>

<a href="<%=path%>/PersoninfoAction.action?page=${page+1 }">下一页</a>

<c:if test="${maxSize>1}">

>>

</c:if>

<a href="<%=path%>/PersoninfoAction.action?page=${maxSize}">尾页</a>

</td>

</tr>

</table>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5907493.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-07
下一篇 2023-03-07

发表评论

登录后才能评论

评论列表(0条)

保存