当前位置:首页 » 操作系统 » 数据库无限分类

数据库无限分类

发布时间: 2023-01-18 05:48:24

⑴ 大神请进:如何用php和Mysql实现无限分类相册

这问题好好笑,你知道什么情况使用递归吗?你说的步骤没一处和递归有关系,如果你的需求是根据父亲Id获得所有孩子,倒是可以使用递归。题目还有个问题,评论和回复也没有和图片关联。你自己下个套自己钻进去,好好笑。

⑵ 求VB-TREEVIEW 结合数据库无限分类

何为无限分类?
如果你要实现树状结构的数据结构,首先数据库的设计应该这样:
1.表必须要具有节点ID,父节点ID之两个字段
2.根节点的父节点ID可以设置成为根节点的ID

如下所示:
节点ID父节点ID名称
----------------------------------------------
11根节点
21一级子节点1
31一级子节点2
42二级子节点1
52二级子节点2
63二级子节点3
73二级子节点4

如果要将上表的数据显示到TreeView,可以采用递归函数调用的方法如下:
Function ListData(ByVal iID as Integer)
'从数据库获取此iID所对应的行
'SQL语句如:select * from table1 where 节点ID=iID
'将此行数据显示到TreeView

'从数据库获取以iID为父ID的行
'SQL语句如:select * from table where 父节点ID=iID
'循环调用ListData函数附带每一行数据的节点ID为参数来显示子节点的数据

Call ListView(节点ID)
End Function

⑶ MYSQL新建一张无限分类数据表,表结构应该如何建

既然是无限分类,那分类其实就是同等的
所以first字段去掉,abcd这些放到name,
根据pid=0来判断是否第一层,
其它字段照旧就可以了

⑷ 数据库如何表示分级关系

一种是使用parentid ,这种可以实现理论上的无限分级。

一种是显示的表设计,然后表之间建立关系,这个适合级别清晰的情形。

⑸ 数据库有哪几种

一、关系数据库

关系型数据库,存储的格式可以直观地反映实体间的关系。关系型数据库和常见的表格比较相似,关系型数据库中表与表之间是有很多复杂的关联关系的。

常见的关系型数据库有Mysql,SqlServer等。在轻量或者小型的应用中,使用不同的关系型数据库对系统的性能影响不大,但是在构建大型应用时,则需要根据应用的业务需求和性能需求,选择合适的关系型数据库。

虽然关系型数据库有很多,但是大多数都遵循SQL(结构化查询语言,Structured Query Language)标准。 常见的操作有查询,新增,更新,删除,求和,排序等。

查询语句:SELECT param FROM table WHERE condition 该语句可以理解为从 table 中查询出满足 condition 条件的字段 param。

新增语句:INSERT INTO table (param1,param2,param3) VALUES (value1,value2,value3) 该语句可以理解为向table中的param1,param2,param3字段中分别插入value1,value2,value3。

更新语句:UPDATE table SET param=new_value WHERE condition 该语句可以理解为将满足condition条件的字段param更新为 new_value 值。

删除语句:DELETE FROM table WHERE condition 该语句可以理解为将满足condition条件的数据全部删除。

去重查询:SELECT DISTINCT param FROM table WHERE condition 该语句可以理解为从表table中查询出满足条件condition的字段param,但是param中重复的值只能出现一次。

排序查询:SELECT param FROM table WHERE condition ORDER BY param1该语句可以理解为从表table 中查询出满足condition条件的param,并且要按照param1升序的顺序进行排序。

总体来说, 数据库的SELECT,INSERT,UPDATE,DELETE对应了我们常用的增删改查四种操作。

关系型数据库对于结构化数据的处理更合适,如学生成绩、地址等,这样的数据一般情况下需要使用结构化的查询,例如join,这样的情况下,关系型数据库就会比NoSQL数据库性能更优,而且精确度更高。

由于结构化数据的规模不算太大,数据规模的增长通常也是可预期的,所以针对结构化数据使用关系型数据库更好。关系型数据库十分注意数据操作的事务性、一致性,如果对这方面的要求关系型数据库无疑可以很好的满足。

二、非关系型数据库(NoSQL)

随着近些年技术方向的不断拓展,大量的NoSql数据库如MongoDB、Redis、Memcache出于简化数据库结构、避免冗余、影响性能的表连接、摒弃复杂分布式的目的被设计。

指的是分布式的、非关系型的、不保证遵循ACID原则的数据存储系统。NoSQL数据库技术与CAP理论、一致性哈希算法有密切关系。所谓CAP理论,简单来说就是一个分布式系统不可能满足可用性、一致性与分区容错性这三个要求,一次性满足两种要求是该系统的上限。

而一致性哈希算法则指的是NoSQL数据库在应用过程中,为满足工作需求而在通常情况下产生的一种数据算法,该算法能有效解决工作方面的诸多问题但也存在弊端,即工作完成质量会随着节点的变化而产生波动,当节点过多时,相关工作结果就无法那么准确。

这一问题使整个系统的工作效率受到影响,导致整个数据库系统的数据乱码与出错率大大提高,甚至会出现数据节点的内容迁移,产生错误的代码信息。

但尽管如此,NoSQL数据库技术还是具有非常明显的应用优势,如数据库结构相对简单,在大数据量下的读写性能好;能满足随时存储自定义数据格式需求,非常适用于大数据处理工作。

NoSQL数据库适合追求速度和可扩展性、业务多变的应用场景。

对于非结构化数据的处理更合适,如文章、评论,这些数据如全文搜索、机器学习通常只用于模糊处理,并不需要像结构化数据一样,进行精确查询,而且这类数据的数据规模往往是海量的,数据规模的增长往往也是不可能预期的;

而NoSQL数据库的扩展能力几乎也是无限的,所以NoSQL数据库可以很好的满足这一类数据的存储。

NoSQL数据库利用key-value可以大量的获取大量的非结构化数据,并且数据的获取效率很高,但用它查询结构化数据效果就比较差。

目前NoSQL数据库仍然没有一个统一的标准,它现在有四种大的分类:

1、键值对存储(key-value):代表软件Redis,它的优点能够进行数据的快速查询,而缺点是需要存储数据之间的关系。

2、列存储:代表软件Hbase,它的优点是对数据能快速查询,数据存储的扩展性强。而缺点是数据库的功能有局限性。

3、文档数据库存储:代表软件MongoDB,它的优点是对数据结构要求不特别的严格。而缺点是查询性的性能不好,同时缺少一种统一查询语言。

4、图形数据库存储:代表软件InfoGrid,它的优点可以方便的利用图结构相关算法进行计算。而缺点是要想得到结果必须进行整个图的计算,而且遇到不适合的数据模型时,图形数据库很难使用。

安全

数据库安全涉及保护数据库内容、其所有者和用户的所有各个方面。它的范围从防止有意的未经授权的数据库使用到未经授权的实体(例如,个人或计算机程序)无意的数据库访问

数据库访问控制涉及控制谁(一个人或某个计算机程序)可以访问数据库中的哪些信息。该信息可以包括特定的数据库对象(例如,记录类型、特定记录、数据结构);

对特定对象的特定计算(例如,查询类型或特定查询),或者使用到前者的特定访问路径(例如,使用特定索引)或其他数据结构来访问信息)。

数据库访问控制由使用专用受保护安全 DBMS 接口的特别授权(由数据库所有者)人员设置。

这可以在个人基础上直接管理,或者通过将个人和特权分配给组,或者(在最复杂的模型中)通过将个人和组分配给角色,然后授予权利。数据安全可防止未经授权的用户查看或更新数据库。使用密码,用户可以访问整个数据库或它的子集,称为“子模式”。

例如,员工数据库可以包含有关单个员工的所有数据,但一组用户可能仅被授权查看工资数据,而其他用户仅被允许访问工作历史和医疗数据。如果 DBMS 提供了一种交互式输入和更新数据库以及查询数据库的方法,则此功能允许管理个人数据库。

数据安全通常涉及保护特定的数据块,包括物理保护(即免受损坏、破坏或移除;例如,参见物理安全),或将它们或它们的一部分解释为有意义的信息(例如,通过查看它们组成的位串,得出特定的有效信用卡号;例如,参见数据加密)。

更改和访问日志记录谁访问了哪些属性、更改了什么以及何时更改。日志服务通过保留访问发生和更改的记录,允许以后进行取证数据库审计。有时应用程序级代码用于记录更改而不是将其留给数据库。可以设置监控以尝试检测安全漏洞。

以上内容参考网络-数据库

⑹ 求无限分类的数据库表结构

无限类别、无限级别的数据库分类结构,以下三个字段即可:

class_id int PKEY,
upclass int,
classname char(10)

其它产品表中,使用外键class_id关联本表的class_id作为类别。

⑺ 数据库分为哪几类

数据库按照使用和归类不同,它的分类也是不同的,我基本归纳了如下几类:
一,按国际上通用的分类方法,数据库分为以下三大类:
1、参考数据库(reference
databases),是能指引用户到另一信息源获取原文或其他细节的数据库;
2、源数据库(source
databases),指能直接提供所需原始资料或具体数据的数据库。;
3、混合型数据库(mixed
databases),能同时存贮多种类型数据的数据库。
二,按数据结构来分类,有三种:
1、层次式数据库
2、网络式数据库
3、关系式数据库
三,常用数据库分类:
1,ibm
的db2。
2, oracle。
3, informix。
4,sybase。
5,sql
server。
6,postgresql。
7,mysql。

⑻ php+mysql怎么实现无限级别分类,数据库怎么设计只用一条SQL语句读出数据,怎么解决+新闻- |—国际新闻

数据库中给多个父级ID字段,例如:国内新闻的PID(父级ID)是新闻的ID,体育新闻的PID是国内新闻的ID,这样通过查找PID就可以找到上一级别。

⑼ 如何用php实现添加无限分类类似织梦后台那种可以无限添加分类

数据库设置3个字段 id name fid fid就是顶级id的意思

id name fid
1 分类1 0
2 分类2 0
3 分类1-1 1
4 分类1-2 1
5 分类2-1 2
6 分类2-2 2

数据库就是这种模式,fid为0的是最大分类。id为3 和 4的分类 是id 为 1 分类的子分类 ,所以fid都为 1 。5和6 是id 为 2的子分类。

你查找数据库的时候查找 fid=0的数据 ,找出顶级分类 1 和 2 ,再查找fid分别为 1 和 2的分类,就是对应的子类,你用foreach遍历出来就是了,

⑽ 什么是 无限极分类(PHP。数据库)

那是一种关联关系....sql 里可以叫"自连接" 假设:表 Category 有以下字段: Id(PK),Cate_Name(varchar),Cate_Parent_Id(int) 数据: Id(编号ID) Cate_Name(类别名称) Cate_Parent_Id(父级Id) 1 BaseCategory 0 2 News 1 3 Article 1 4 Story 3 说明: Id 为 1 的基类别(没有父级类别) News,Article 为 基类别下的子分类 Story 为 Article 下的子分类 层次关系: 0 - 2 - 3 - 4 这样就可以简单实现无限分类的数据库的设计了 使用: 给出Id 获取到它的父类别和所有子类别 Function getParentCategory($Id){ $sql = "select * from Category where Id = (select Cate_Parent_Id from Category where Id = $Id)"; $rs = mysql_query($sql,$conn); ...... //省事期间,给出伪代码吧 if(记录不存在 或者 $Id = 1){ return false; //无父级或不存在 }else{ return 查询出的父级数据数组; } } Function getChildCategory($PId){ $sql = "select * from Category where Cate_Parent_Id = $PId"; 存在则返回数据数组 否则返回false } 上面只是简单说明下大致思路.. php,J2ee的我没手写过,都是通过支持ORM的MVC框架去配置出来的. asp的倒是写过,需要的话,可以发你 只要逻辑关系整清楚了,就不难了...至于页面展示,可以用JS或者AJAX

热点内容
随机启动脚本 发布:2025-07-05 16:10:30 浏览:518
微博数据库设计 发布:2025-07-05 15:30:55 浏览:20
linux485 发布:2025-07-05 14:38:28 浏览:300
php用的软件 发布:2025-07-05 14:06:22 浏览:751
没有权限访问计算机 发布:2025-07-05 13:29:11 浏览:428
javaweb开发教程视频教程 发布:2025-07-05 13:24:41 浏览:690
康师傅控流脚本破解 发布:2025-07-05 13:17:27 浏览:235
java的开发流程 发布:2025-07-05 12:45:11 浏览:681
怎么看内存卡配置 发布:2025-07-05 12:29:19 浏览:279
访问学者英文个人简历 发布:2025-07-05 12:29:17 浏览:829