DNN数据库核心表结构及设计思路探研
1.表名称:
Tab 页面表,TabModules页面模块表,Modules模块表,ModuleDefinitions模块定义表,ModuleControls模块控件表,DesktopModules桌面模块
2.Tab是一张自连接的表,即DNN中的Page(页面)
3.Modules是DNN内容管理的模块单元,就是下面中所谓的模块,我们在这里就叫他页面模块。他与Tabs的关系是多对多,即,一个页面中可以放多个相同的模块实例(功能:添加新模块),同一个模块实例也可以放在不同的页面上(功能:增加已有模块)(注:此处添加模块实际上是添加桌面模块,一个桌面模块可能有好几个页面模块,这个后面再述)。
4.DesktopModules桌面模块,模块开发者眼中的模块,像blog,新闻,下载等,就是我们平时安装,卸载的模块。这里我们叫桌面模块。
5.桌面模块与页面模块,平时我们似乎习惯与都叫他们模块。但实际上他们根本不是同一个东西,相差很大。由关系图可发现:一个DesktopModules桌面模块可以有好几个(模块定义ModuleDefinitions),一个(模块定义ModuleDefinitions)可以有好几个页面模块,像HTML,Link这些桌面模块实在太简单了,所以,他们一个桌面模块只有一个模块定义,当我们往页面上添加桌面模块时,只会添加一个页面模块。但当我们添加blog模块时,就会发现,添加一个桌面模块,桌面上就会一下子多出好几个页面模块,这是因为,blog太复杂,一个模块定义搞不定,所以,一个桌面模块添加了好几个模块定义,当往桌面添加桌面模块时就会将这个桌面模块的所以模块定义都添加一次(一个模块定义,在页面上就一个页面模块)。ModuleControls模块控件表,也可以叫控制表,就是下面中控制一列中的东西,基本上是一个控制,对应一个用户控件,所以我叫他模块控件表
DNN数据库核心表结构及设计思路探研相关推荐
- 聊天系统 数据库功能表结构如何设计?
User(--用户表字段 字段类型 字段描述 备注 U_ID Int 主键.自增 U_LoginID Varchar(20) (登陆账号) U_NickName Varchar(20) (昵称) U_ ...
- MySQL数据库表结构的设计
一.前言 1.1 关系型数据库 数据库关系型模型的概念最早由"关系数据库之父"之称的埃德加·弗兰克·科德(Edgar Frank Codd或E. F. Codd)博士提出,1970 ...
- ezdml 支付mysql 吗_关于EZDML数据库表结构制作设计工具使用踩的坑
我使用的是一款EZDML的数据库表结构制作设计工具 最开始在数据库创建数据库名为personalmall,基字符集为默认,数据库排序规则也是默认,创建完成之后 去EZDML生成SQL 点击执行sql ...
- 驰骋工作流引擎设计系列04 流程引擎表结构的设计
第1节. 关键字 驰骋工作流引擎 流程快速开发平台 workflow ccflow jflow 第1节. 流程引擎表结构的设计 流程引擎表是流程引擎控制流程运转的数据存储表,是整个流程引擎的核心表.理 ...
- SQL巩固以及数据库、表结构优化
SQL巩固&数据库.表结构优化 前言 对于初级程序开发工程师而言,SQL是很多人的弱项,为此我给大家来做一下总结,希望能够帮到你们. 课程说明 1.介绍项目实战开发过程中常用的MySQL函数及 ...
- 关于工作流程引擎表结构的设计概要说明.
流程引擎表结构的设计 流程引擎表是流程引擎控制流程运转的数据存储表,是整个流程引擎的核心表.理解表结构,掌握状态字段,相关字段变化的规律,就掌握的整个流程引擎运转的规律了. 流程引擎表的作用 流程引擎 ...
- 数据库间表结构对比和数据对比
概述 对于企业软件开发或实施人员,在软件实施过程中,经常会遇到了这么一个问题,我们在客户那边安装了整个ERP程序并且向数据库中导入了客户提供给我的基础资料,程序进入试运行阶段,在试运行期间,客户反映出 ...
- 把数据库的表结构导出Excel格式
把数据库的表结构导出Excel格式 话不多说先上代码! SELECT COLUMN_NAME 列名, COLUMN_TYPE 数据类型, DATA_TYPE 字段类型, CHARACTER_MAXIM ...
- MySQL 对比数据库的表结构
有时候,需要对比一下测试环境和生产环境中,数据库的表结构是否有所差异.有两个常用的工具. AmpNmp.DatabaseCompare GUI 界面,支持多种数据库(MySQL.SQL Server. ...
最新文章
- 每天一个linux命令(9):touch命令
- 《memory leak: stackwalk》
- nvidia显卡cuda的性能_性能追平上代万元旗舰!NVIDIA GeForce RTX 3070规格解析
- python功能分享_Python中非常实用的一些功能和函数分享
- 深入浅出Spring Boot,你和大神的差距,就只有这份文档的距离
- .jar中没有主清单属性_IDEA中spring boot helloword打包运行-0228-2020
- Linux计划任务Crontab介绍
- 中值滤波medianBlur
- 剑指Offer - 面试题17. 打印从1到最大的n位数
- python表达式3and5_python3 中 and 和 or 运算规律
- ArcGIS水文分析实战教程(7)细说流域提取
- react使用中的注意事项(持续更新)
- Ubuntu 字体安装以及 vscode字体配置
- 日常生活开支记账明细_你的理财小管家!简单明了!皮面理财记账本明细流水支出笔记本!...
- Logstash 时间转换(YYYY-MM-dd HH:mm:ss转Unix时间)
- 车牌识别的matlab程序(程序_讲解_模板),车牌识别的matlab程序(程序-讲解-模板)资料...
- 深入理解计算机系统 csapp 家庭作业(第三章完整版)
- 用AI制作高保真图片
- airflow 在 docker 中的安装与使用
- 关于烛光斧影——赵光义是否谋杀赵匡胤,是否合法继位
热门文章
- UML关系(泛化,实现,依赖,关联(聚合,组合))
- 1-jQuery - AJAX load() 方法【基础篇】
- CSS 解决td里面内容太多把表格弄变形的原因,设置 自动换行。
- OpenCV数字图像处理(5) 像素访问之添加椒盐实例 通道分离与合并
- java 语言实现的随机数生成算法
- javascript音频管理方案:SoundManager2
- 查看mysql版本不一致_MySQL-版本不一致
- 通过计算机管理-共享文件夹,通过“计算机管理”管理工具(MMC)管理本机共享资源...
- java生成tiff_在Java中读取和写出TIFF图像
- 14.Python抠图脚本