Database
wisewillpower
是行动,让潜能无限,To be No.1!Action makes ones potential limitless!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
存储树状结构(上)─领接表方式
我们经常需要在关系型数据库中保存一些树状结构数据,比如分类、分组、权限控制 ACL、论坛帖子树状回复等等。常用的方法有两种,一种是领接表的方式,另一种是预排序遍历树方式。本文以 MySQL 和 PHP 为例进行说明,假设树状结构如下: 领接表方式领接表方式主要依赖于一个 parent 字段,用于指向上级节点,将相邻的上下级节点连接起来,从而将整个树的各个节点连接起来。这样,我们例子中的转载 2008-04-19 10:13:00 · 2188 阅读 · 0 评论 -
非递归的无限级分类目录
或多或少都做过树状目录、产品分类之类的二级或三级菜单,如果遇到更多级的分类,就一般使用递归了。在程序中使用递归或多或少会增加一些性能上的开销。之前我用ASP.net在程序中实现过非递归的无限级分类目录,但考虑到移植性不强,就改成了存储过程,发出来大家共同研究一下,到目前为止,测试过程中还没发现问题,另外,代码方面没经过什么优化。通常情况下,我们更多的操作是读取目录,所以,在下面的实现中转载 2008-04-19 11:00:00 · 1077 阅读 · 0 评论 -
存储树状结构(下)─预排序遍历树方式
预排序遍历树方式(即通常所说的 MPTT,Modified Preorder Tree Traversal)。此算法是在第一种方式的基础之上,给每个节点增加一个左、右数字,用于标识节点的遍历顺序,如下图所示: 从根节点开始左边为 1,然后下一个节点的左边为 2,以此类推,到最低层节点之后,最低层节点的右边为其左边的数字加 1。顺着这些节点,我们可以很容易地遍历完整个树。根据上图,我们对数据表做一些转载 2008-04-19 10:25:00 · 5680 阅读 · 0 评论 -
高级权限管理系统的设计
在任何系统中,权限设计是最基础的东西,一个好的权限系统,可以为开发人员提高开发进度;而且,又可以为用户提供完美的可扩展权限管理,而非简单的权限定制。本文实现功能:实现基于角色+模块+权限粒度的权限管理相关概念:(1)角色:是一类功能的集合,比如新闻编辑这个角色,他可能有起草新闻、编辑新闻等功能集合,而责任编辑他可能就有更多的权限,比如除了新闻编辑的功能,还有审核新闻、删除新闻等粒度级别转载 2008-07-11 10:41:00 · 841 阅读 · 0 评论 -
sql语句提高查询效率
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id fro原创 2008-06-21 11:00:00 · 599 阅读 · 0 评论 -
Oracle系列书籍导读
原创 2008-06-30 18:36:00 · 440 阅读 · 0 评论 -
无限分类_位编码算法
另一篇精彩的链接分类算法要解决的问题在网站建设中,分类算法的应用非常的普遍。在设计一个电子商店时,要涉及到商品分类;在设计发布系统时,要涉及到栏目或者频道分类;在设计软件下载这样的程序时,要涉及到软件的分类;如此等等。可以说,分类是一个很普遍的问题。1、 分类算法常常表现为树的表示和遍历问题。那么,请问:如果用数据库中的一个Table来表达树型分类,应该有几个字段?2、 如何快速地原创 2009-08-14 22:13:00 · 1283 阅读 · 0 评论
分享