无限级分类(非递归算法/存储过程版/GUID主键)完整数据库示例_(1)表结构

简介: 无限分类是一个老生常谈的话题了,网上有很多解决方案,可以分成二个流派,一种利用递归,一种利用非递归(当然需要其它一些辅助手段判断节点层次),但核心表结构都差不多,有三个关键字段(ID主键,ParentId上级类id,ClassName类名--理论上讲,如果用递归,这三个字段就足够了),完整表结构如下 Create TABLE [dbo].

无限分类是一个老生常谈的话题了,网上有很多解决方案,可以分成二个流派,一种利用递归,一种利用非递归(当然需要其它一些辅助手段判断节点层次),但核心表结构都差不多,有三个关键字段(ID主键,ParentId上级类id,ClassName类名--理论上讲,如果用递归,这三个字段就足够了),完整表结构如下


Create TABLE [dbo].[T_Class](
 [F_ID] [uniqueidentifier] NOT NULL CONSTRAINT [DF_T_Class_F_ID]  DEFAULT (newid()),
 [F_ClassName] [nvarchar](256) COLLATE Chinese_PRC_CI_AS NULL CONSTRAINT [DF_F_ClassTest_F_ClassName]  DEFAULT (''),
 [F_ShortName] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
 [F_ParentID] [uniqueidentifier] NULL CONSTRAINT [DF_T_Class_F_ParentID]  DEFAULT (newid()),
 [F_Depth] [int] NULL CONSTRAINT [DF_F_ClassTest_F_Depth]  DEFAULT ((0)),
 [F_RootID] [int] NULL CONSTRAINT [DF_F_ClassTest_F_RootID]  DEFAULT ((0)),
 [F_Orders] [int] NULL CONSTRAINT [DF_F_ClassTest_F_Orders]  DEFAULT ((0)),
 [F_ParentIDStr] [nvarchar](300) COLLATE Chinese_PRC_CI_AS NULL CONSTRAINT [DF_F_ClassTest_F_ParentIDStr]  DEFAULT (''),
 [F_ParentNameStr] [nvarchar](300) COLLATE Chinese_PRC_CI_AS NULL CONSTRAINT [DF_F_ClassTest_F_ParentNameStr]  DEFAULT (''),
 [F_ReadMe] [nvarchar](250) COLLATE Chinese_PRC_CI_AS NULL CONSTRAINT [DF_F_ClassTest_F_ReadMe]  DEFAULT (''),
 [F_AddTime] [datetime] NULL CONSTRAINT [DF_F_Class_F_AddTime]  DEFAULT (getdate()),
 [F_Type] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
 [F_MaxPage] [int] NULL CONSTRAINT [DF_T_Class_F_MaxPage]  DEFAULT ((0)),
 [F_No] [nvarchar](50) COLLATE Chinese_PRC_CI_AS NULL,
 [F_isShow] [tinyint] NULL CONSTRAINT [DF_T_Class_F_isShow]  DEFAULT ((0)),
 [F_AutoId] [int] IDENTITY(1,1) NOT NULL,
 CONSTRAINT [PK_T_Class] PRIMARY KEY CLUSTERED
(
 [F_ID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]

目录
相关文章
|
19天前
|
算法
分享一些提高二叉树遍历算法效率的代码示例
这只是简单的示例代码,实际应用中可能还需要根据具体需求进行更多的优化和处理。你可以根据自己的需求对代码进行修改和扩展。
|
21天前
|
算法 Python
在Python编程中,分治法、贪心算法和动态规划是三种重要的算法。分治法通过将大问题分解为小问题,递归解决后合并结果
在Python编程中,分治法、贪心算法和动态规划是三种重要的算法。分治法通过将大问题分解为小问题,递归解决后合并结果;贪心算法在每一步选择局部最优解,追求全局最优;动态规划通过保存子问题的解,避免重复计算,确保全局最优。这三种算法各具特色,适用于不同类型的问题,合理选择能显著提升编程效率。
38 2
|
2月前
|
算法 搜索推荐 Shell
数据结构与算法学习十二:希尔排序、快速排序(递归、好理解)、归并排序(递归、难理解)
这篇文章介绍了希尔排序、快速排序和归并排序三种排序算法的基本概念、实现思路、代码实现及其测试结果。
24 1
|
2月前
|
存储 SQL 数据库
SQL Server 临时存储过程及示例
SQL Server 临时存储过程及示例
56 3
|
2月前
|
存储 SQL 关系型数据库
MySql数据库---存储过程
MySql数据库---存储过程
41 5
|
3月前
|
SQL 关系型数据库 MySQL
学成在线笔记+踩坑(3)——【内容模块】课程分类查询、课程增改删、课程计划增删改查,统一异常处理+JSR303校验
课程分类查询、课程新增、统一异常处理、统一封装结果类、JSR303校验、修改课程、查询课程计划、新增/修改课程计划
学成在线笔记+踩坑(3)——【内容模块】课程分类查询、课程增改删、课程计划增删改查,统一异常处理+JSR303校验
|
2月前
|
NoSQL 前端开发 MongoDB
前端的全栈之路Meteor篇(三):运行在浏览器端的NoSQL数据库副本-MiniMongo介绍及其前后端数据实时同步示例
MiniMongo 是 Meteor 框架中的客户端数据库组件,模拟了 MongoDB 的核心功能,允许前端开发者使用类似 MongoDB 的 API 进行数据操作。通过 Meteor 的数据同步机制,MiniMongo 与服务器端的 MongoDB 实现实时数据同步,确保数据一致性,支持发布/订阅模型和响应式数据源,适用于实时聊天、项目管理和协作工具等应用场景。
|
2月前
|
移动开发 算法 前端开发
前端常用算法全解:特征梳理、复杂度比较、分类解读与示例展示
前端常用算法全解:特征梳理、复杂度比较、分类解读与示例展示
26 0
|
2月前
|
算法 定位技术
数据结构与算法学习九:学习递归。递归的经典实例:打印问题、阶乘问题、递归-迷宫问题、八皇后问题
本文详细介绍了递归的概念、重要规则、形式,并展示了递归在解决打印问题、阶乘问题、迷宫问题和八皇后问题等经典实例中的应用。
45 0
|
4月前
|
搜索推荐 前端开发 算法
基于用户画像及协同过滤算法的音乐推荐系统,采用Django框架、bootstrap前端,MySQL数据库
本文介绍了一个基于用户画像和协同过滤算法的音乐推荐系统,使用Django框架、Bootstrap前端和MySQL数据库构建,旨在为用户提供个性化的音乐推荐服务,提高推荐准确性和用户满意度。
281 7
基于用户画像及协同过滤算法的音乐推荐系统,采用Django框架、bootstrap前端,MySQL数据库