PHP框架+gatewayworker实现在线1对1聊天--mysql数据库(3)

聊天系统的数据库准备

数据库比较简单,就两张表。一张是用户表,包含用户姓名,头像。因为只是实现聊天功能,其他的字段省略了。另一张表示聊天内容表,记录字段包含发送人id,发送人姓名,接收人id,接收人姓名,发送的内容,内容的类型。这里将内容分为了文本、图片、表情3类。

sql 复制代码
CREATE TABLE IF NOT EXISTS `user` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
  `user_name` varchar(30) NOT NULL DEFAULT '' COMMENT '用户姓名',
  `avatar` varchar(100) NOT NULL DEFAULT '' COMMENT '头像',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8mb4  COLLATE=utf8mb4_general_ci  COMMENT='用户表' AUTO_INCREMENT=1 ;
CREATE TABLE IF NOT EXISTS `chat` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
  `from_id` int(10) unsigned NOT NULL default 0 COMMENT '发送人id',
  `from_user_name` varchar(30) NOT NULL DEFAULT '' COMMENT '发送人姓名',
  `to_id` int(10) unsigned NOT NULL default 0 COMMENT '接收人id',
  `to_user_name` varchar(30) NOT NULL DEFAULT '' COMMENT '接收人姓名',
  `content` varchar(500) not null default '' comment '内容',
  `content_type` tinyint(1) unsigned NOT NULL default 0 COMMENT '内容类型,1文本,2图片,3表情',
  `add_time` int(10) unsigned NOT NULL default 0 COMMENT '添加时间',
  `add_time_f` char(19) NOT NULL default '' COMMENT '格式化后添加时间',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8mb4  COLLATE=utf8mb4_general_ci  COMMENT='聊天内容表' AUTO_INCREMENT=1 ;

数据库也准备好了,万事俱备,只欠东风了。可以开始实现功能了。

相关推荐
JIngJaneIL2 小时前
基于springboot + vue古城景区管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
微学AI3 小时前
复杂时序场景的突围:金仓数据库是凭借什么超越InfluxDB?
数据库
廋到被风吹走3 小时前
【数据库】【Redis】定位、优势、场景与持久化机制解析
数据库·redis·缓存
有想法的py工程师4 小时前
PostgreSQL + Debezium CDC 踩坑总结
数据库·postgresql
Nandeska4 小时前
2、数据库的索引与底层数据结构
数据结构·数据库
小卒过河01044 小时前
使用apache nifi 从数据库文件表路径拉取远程文件至远程服务器目的地址
运维·服务器·数据库
过期动态5 小时前
JDBC高级篇:优化、封装与事务全流程指南
android·java·开发语言·数据库·python·mysql
Mr.朱鹏5 小时前
SQL深度分页问题案例实战
java·数据库·spring boot·sql·spring·spring cloud·kafka
一位代码5 小时前
mysql | 常见日期函数使用及格式转换方法
数据库·mysql
SelectDB5 小时前
Apache Doris 4.0.2 版本正式发布
数据库·人工智能