mysql SYS_DICT SYS_DICT_ITEM
  ouBLJHs4pwF7 2023年11月02日 32 0

MySQL 数据库中的 SYS_DICT 和 SYS_DICT_ITEM 表

1. 简介

在 MySQL 数据库中,SYS_DICTSYS_DICT_ITEM 是两个常见的表,用于存储字典数据。字典数据通常用于存储一些静态的、不经常变动的数据,如性别、国家、省份等。这些数据通常在多处使用,以提供给用户进行选择或展示。

本文将介绍如何设计和使用 SYS_DICTSYS_DICT_ITEM 表,以及如何在 MySQL 数据库中进行相应的操作。

2. 表结构

2.1 SYS_DICT

SYS_DICT 表用于存储字典的分类信息,通常包含以下字段:

  • id:字典分类ID,主键,自增长;
  • name:字典分类名称;
  • code:字典分类编码;
  • create_time:创建时间;
  • update_time:更新时间。

下面是创建 SYS_DICT 表的 SQL 语句:

CREATE TABLE `SYS_DICT` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `name` VARCHAR(50) NOT NULL COMMENT '字典分类名称',
  `code` VARCHAR(50) NOT NULL COMMENT '字典分类编码',
  `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` DATETIME ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  PRIMARY KEY (`id`),
  UNIQUE KEY `code_index` (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='字典分类表';

2.2 SYS_DICT_ITEM

SYS_DICT_ITEM 表用于存储字典项的具体信息,通常包含以下字段:

  • id:字典项ID,主键,自增长;
  • dict_id:字典分类ID,关联 SYS_DICT 表的 id 字段;
  • name:字典项名称;
  • value:字典项值;
  • sort:字典项排序;
  • create_time:创建时间;
  • update_time:更新时间。

下面是创建 SYS_DICT_ITEM 表的 SQL 语句:

CREATE TABLE `SYS_DICT_ITEM` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `dict_id` INT(11) NOT NULL COMMENT '字典分类ID',
  `name` VARCHAR(50) NOT NULL COMMENT '字典项名称',
  `value` VARCHAR(50) NOT NULL COMMENT '字典项值',
  `sort` INT(11) DEFAULT '0' COMMENT '字典项排序',
  `create_time` DATETIME DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` DATETIME ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='字典项表';

3. 类图

下面是 SYS_DICTSYS_DICT_ITEM 表的类图:

classDiagram
  SYS_DICT "1" *-- "0..*" SYS_DICT_ITEM : has
  SYS_DICT : +id: INT
  SYS_DICT : +name: VARCHAR
  SYS_DICT : +code: VARCHAR
  SYS_DICT : +create_time: DATETIME
  SYS_DICT : +update_time: DATETIME

  SYS_DICT_ITEM : +id: INT
  SYS_DICT_ITEM : +dict_id: INT
  SYS_DICT_ITEM : +name: VARCHAR
  SYS_DICT_ITEM : +value: VARCHAR
  SYS_DICT_ITEM : +sort: INT
  SYS_DICT_ITEM : +create_time: DATETIME
  SYS_DICT_ITEM : +update_time: DATETIME

4. 操作示例

4.1 插入字典分类数据

首先,我们需要向 SYS_DICT 表中插入一些字典分类数据。假设我们要插入一个名为 "Gender" 的字典分类,代码为 "gender"。我们可以使用以下 SQL 语句插入数据:

INSERT INTO `SYS_DICT` (`name`, `code`) VALUES ('Gender', 'gender');

4.2 插入字典项数据

接下来,我们需要向 SYS_DICT_ITEM 表中插入一些字典项数据。假设我们要插入性别的字典项数据,包括 "Male" 和 "Female"。我们可以使用以下 SQL 语句插入数据:

INSERT INTO `SYS_DICT_ITEM` (`dict_id
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  xaeiTka4h8LY   2024年05月31日   54   0   0 MySQLSQL
  xaeiTka4h8LY   2024年05月17日   56   0   0 数据库JavaSQL
  xaeiTka4h8LY   2024年05月17日   54   0   0 数据库SQL
  Dk8XksB4KnJY   2023年12月23日   33   0   0 字段字段SQLSQL
ouBLJHs4pwF7