当前位置: 首页 > wzjs >正文

永嘉网站开发公司360优化大师旧版

永嘉网站开发公司,360优化大师旧版,足球网站开发,施工企业会计实务目录 个人博客系统数据库设计 1.用户表设计 2.博客表设计 3.标签表设计 4.博客_标签表设计 5.评论表设计 6.一些总结 各选项的含义 On Delete(删除时行为) On Update(更新时行为) 实际应用场景 注意事项 个人博客系统数据库设计 …

目录

个人博客系统数据库设计

1.用户表设计

2.博客表设计

3.标签表设计

4.博客_标签表设计

5.评论表设计

6.一些总结

各选项的含义

On Delete(删除时行为)

On Update(更新时行为)

实际应用场景

注意事项


个人博客系统数据库设计

1.用户表设计

sql语句

DROP TABLE IF EXISTS `users`;
CREATE TABLE `users`  (
  `userid` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户编号',
  `username` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户名',
  `password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户密码',
  `phone` varchar(11) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户手机号',
  `email` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户邮箱',
  `address` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户地址',
  `sex` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户性别',
  `hobby` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '用户爱好',
  `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注',
  `isblog` enum('false','true') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'false' COMMENT '是否是博主',
  `registertime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '用户注册时间',
  PRIMARY KEY (`userid`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;

字段名类型长度/值允许空值默认值注释其他特性
useridintNOT NULLPRI用户编号
usernamevarchar20NULL用户名
passwordvarchar255NULL用户密码
phonevarchar11NULL用户手机号
emailvarchar100NULL用户邮箱
addressvarchar100NULL用户地址
sexvarchar10NULL用户性别
hobbyvarchar255NULL用户爱好
remarkvarchar255NULL备注
isblogenum'false','true'NULL'false'是否是博主
registertimetimestampNULL用户注册时间ON UPDATE CURRENT_TIMESTAMP

2.博客表设计

blog表设计

DROP TABLE IF EXISTS `blog`;
CREATE TABLE `blog`  (
  `blogid` int(11) NOT NULL AUTO_INCREMENT COMMENT '评论id',
  `userid` int(11) NULL DEFAULT NULL COMMENT '用户id',
  `tittle` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '评论标题',
  `content` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '博客内容',
  `clicked` int(11) NULL DEFAULT NULL COMMENT '博客点击数',
  `attachment` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '附件',
  `createtime` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '博客创建时间',
  PRIMARY KEY (`blogid`) USING BTREE,
  INDEX `userid`(`userid`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
 

字段名数据类型允许NULL默认值自动递增字符集/排序规则注释
blogidint(11)NOT NULL-是 (AUTO_INCREMENT)-评论id
useridint(11)允许NULL-用户id
tittlevarchar(255)允许NULLutf8mb4_general_ci评论标题
contentvarchar(255)允许NULLutf8mb4_general_ci博客内容
clickedint(11)允许NULL-博客点击数
attachmentvarchar(255)允许NULLutf8mb4_general_ci附件
createtimetimestamp允许CURRENT_TIMESTAMP (ON UPDATE CURRENT_TIMESTAMP)-博客创建时间

3.标签表设计

tag表

DROP TABLE IF EXISTS `tag`;
CREATE TABLE `tag`  (
  `tagid` int(11) NOT NULL AUTO_INCREMENT COMMENT '标题id',
  `tagname` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标题名字',
  PRIMARY KEY (`tagid`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
 

字段名数据类型允许为空默认值自动递增字符集排序规则说明
tagidint(11)---标签ID
tagnamevarchar(255)NULLutf8mb4utf8mb4_general_ci标签名称

4.博客_标签表设计

tagblog表

DROP TABLE IF EXISTS `tagblog`;
CREATE TABLE `tagblog`  (
  `id` int(11) NOT NULL COMMENT '标签id',
  `tagid` int(11) NULL DEFAULT NULL COMMENT '标签id',
  `blogid` int(11) NULL DEFAULT NULL COMMENT '博客id',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `blogid`(`tagid`) USING BTREE
) ENGINE = MyISAM CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Fixed;
 

字段名数据类型允许为空默认值主键索引说明
idint(11)--主键ID
tagidint(11)NULL标签ID
blogidint(11)NULL-博客ID

5.评论表设计

comment表

DROP TABLE IF EXISTS `comment`;
CREATE TABLE `comment`  (
  `commentid` int(11) NOT NULL AUTO_INCREMENT COMMENT '评论id',
  `userid` int(11) NULL DEFAULT NULL COMMENT '用户id',
  `blogid` int(11) NULL DEFAULT NULL COMMENT '博客id',
  `content` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '评论内容',
  `status` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '状态',
  `ip` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '评论ip地址',
  `createtime` timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '评论时间',
  PRIMARY KEY (`commentid`) USING BTREE,
  INDEX `userid`(`userid`) USING BTREE,
  INDEX `blogid`(`blogid`) USING BTREE
) ENGINE = MyISAM AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
 

段名

数据类型允许为空默认值自动递增字符集排序规则索引说明
commentidint(11)---主键评论ID
useridint(11)NULL--BTREE用户ID
blogidint(11)NULL--BTREE博客ID
contentvarchar(255)NULLutf8mb4utf8mb4_general_ci-评论内容
statusvarchar(255)NULLutf8mb4utf8mb4_general_ci-评论状态
ipvarchar(255)NULLutf8mb4utf8mb4_general_ci-评论IP地址
createtimetimestampON UPDATE CURRENT_TIMESTAMP---评论时间

6.一些总结

表的设计有 一对多的关系 ,一对一的关系,还可以使用外键约束 ,外键约束时,外键在从表中建立,而非主表建立,通过在从表建立外键从表中的数据进行限制.下面是用navicat设计数据库中的一些外键参数说明

各选项的含义
On Delete(删除时行为)
  1. CASCADE(级联):当主表中的记录被删除时,自动删除从表中相关联的记录。

    • 例如:删除一个部门,该部门下的所有员工记录也会被自动删除

  2. NO ACTION(无动作):如果从表中有关联记录存在,则不允许删除主表中的记录。

    • 这是最严格的约束,确保数据完整性

  3. RESTRICT(限制):与 NO ACTION 类似,阻止删除操作

    • 在大多数数据库中,NO ACTION 和 RESTRICT 是相同的

  4. SET NULL(设为空):当主表中的记录被删除时,将从表中相关记录的外键字段设为 NULL

    • 前提是外键字段允许为 NULL

On Update(更新时行为)

这些选项与 On Delete 类似,但是针对主表主键被更新时的情况:

  1. CASCADE:主表主键更新时,从表外键自动更新为新值

  2. NO ACTION/RESTRICT:阻止主键更新(如果有外键引用)

  3. SET NULL:主键更新时,从表外键设为 NULL

实际应用场景
  1. CASCADE:适用于强关联数据,如订单和订单项

  2. NO ACTION/RESTRICT:适用于需要强制保持数据完整性的情况

  3. SET NULL:适用于可选关联,如员工和部门关系(允许员工暂时无部门)

注意事项
  • 使用 CASCADE 要特别小心,可能导致意外的大规模数据删除

  • 在大多数业务场景中,NO ACTION/RESTRICT 是更安全的选择

  • SET NULL 要求外键字段必须允许 NULL 值

http://www.dtcms.com/wzjs/474177.html

相关文章:

  • 怎么做自己的网站赚钱网络营销推广方式包括
  • 适合小企业的erp软件北京seo优化
  • 大连地区做网站银行营销技巧和营销方法
  • 搜索网站做推广最新国际新闻10条
  • 做网站好用的cms头条新闻今日头条官方版本
  • 做手机网站要注意怎么找专业的营销团队
  • 网站建设与管理培训总结cba最新排名
  • 金融行业网站建设方案线上推广软件
  • 是将解压缩的wordpress文件夹下面的文件上传到网站根目录.北京seo推广
  • 电脑如何建立网站汕头网站建设推广
  • 网站模版亮点直播营销策划方案范文
  • 做视频商用模板哪个网站靠谱百度推广seo是什么意思
  • 商城模板网站模板百度竞价点击工具
  • 揭阳智能模板建站百度怎么投放自己的广告
  • 我做的网站服务器别人没法左键点击下载呢seo分析及优化建议
  • asp.net建网站seo推广教程视频
  • 中国蔬菜网网站建设电话win优化大师
  • 广告制作协议抚州seo排名
  • 渠道策略的四种方式代做seo关键词排名
  • 余姚住房和建设局网站官方网站百度一下
  • 网址查询地址查询站长之家运营怎么做
  • 网站建设中源码编程同样重要网站seo诊断技巧
  • 企业网站后端模板长沙企业网站建设报价
  • 大宗商品b2b网站建设alexa全球网站排名分析
  • 我有网站 怎么做淘宝推广的网络销售怎么干
  • 学校校园网站建设方案如何自己做网络推广
  • 广水做网站百度搜索高级搜索技巧
  • 如何仿制wordpress主题广州seo网站公司
  • 如何注册腾讯企业邮箱专业网站优化排名
  • 免费网站建设排行榜自制网页