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

东莞国药官网网上商城郑州官网网站推广优化

东莞国药官网网上商城,郑州官网网站推广优化,辽宁工程建设信息网诚信库怎么填,西安疫情最新进展每一个表都要有一个主键 好的!我用简单易懂的方式解释这两个概念: 每个用户都有很多消息 每条消息只被一个人单独占有 1. 外键关联(Foreign Key)—— 父子关系(一对多) • 是什么:一个表中的字段(外键&…

每一个表都要有一个主键

好的!我用简单易懂的方式解释这两个概念:


每个用户都有很多消息

每条消息只被一个人单独占有

1. 外键关联(Foreign Key)—— 父子关系(一对多)

是什么:一个表中的字段(外键)指向另一个表的主键,类似于“身份证号”引用。
目的:建立两个表之间的父子关系(一对多),确保数据的一致性。

例子:消息表(messages)和用户表(users

• 用户表(父表):

CREATE TABLE users (user_id INT PRIMARY KEY,  -- 主键(唯一身份证)username VARCHAR(50)
);

• 消息表(子表):

CREATE TABLE messages (message_id INT PRIMARY KEY,user_id INT,  -- 外键:指向用户表的user_idcontent TEXT,FOREIGN KEY (user_id) REFERENCES users(user_id)  -- 关键语法
);

效果
• 每条消息必须属于某个存在的用户(user_id必须在users表中存在)。
• 如果尝试删除一个用户,但该用户还有消息,数据库会阻止删除(除非设置级联删除)。


一个用户可以加入多个聊天室

一个聊天室可以包含多个用户

2. 关联表(Association Table)—— 多对多关系

是什么:一个中间表,专门用来描述两个表之间的多对多关系
目的:解决“一个用户加入多个聊天室,一个聊天室包含多个用户”这类问题。

例子:用户表(users)和聊天室表(chat_rooms

• 用户表:

CREATE TABLE users (user_id INT PRIMARY KEY,username VARCHAR(50)
);

• 聊天室表:

CREATE TABLE chat_rooms (room_id INT PRIMARY KEY,room_name VARCHAR(50)
);

关联表user_rooms):

CREATE TABLE user_rooms (user_id INT,room_id INT,PRIMARY KEY (user_id, room_id),  -- 联合主键FOREIGN KEY (user_id) REFERENCES users(user_id),FOREIGN KEY (room_id) REFERENCES chat_rooms(room_id)
);

效果
• 用户A(user_id=1)可以加入聊天室1和聊天室2。
• 聊天室1(room_id=1)中可以包含用户1、用户2、用户3。
• 查询用户1加入的所有聊天室:
sql SELECT chat_rooms.* FROM user_rooms JOIN chat_rooms ON user_rooms.room_id = chat_rooms.room_id WHERE user_rooms.user_id = 1;


3. 类比现实生活

外键关联:像快递单上的“收件人电话”,必须是一个真实存在的号码。
关联表:像学校的“选课表”,记录哪个学生(student_id)选了哪门课(course_id)。


4. 常见误区

误区:试图在一个表的字段中存储多个ID(如用逗号分隔1,3,5),这是错误做法!
正确做法:用关联表(如user_rooms)存储多对多关系。


总结

外键关联:用于一对多(如一个用户发多条消息)。
关联表:用于多对多(如用户和聊天室)。
• 数据库表是“二维表格”,不能嵌套,但通过这两种方式可以实现数据关联!

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

相关文章:

  • 公司微网站建设方案seo怎么弄
  • 免费在线做网站seo流量增加软件
  • 茂县建设局网站网络营销推广有效方式
  • 怎样提高网站的打开速度网店如何引流与推广
  • 企业信用修复单页网站怎么优化
  • 南昌网站空间教育机构排名
  • 网站开发与app差距关键词查询工具
  • 中邮保险网站关键词有几种类型
  • 网站是专门对生活中的一些所谓常识做辟谣的深圳网络品牌推广公司
  • 安徽省建设工程信网站百度人工服务热线电话
  • 如何做视频播放网站北京网络推广公司排行
  • 自己家里做网站网速慢网址怎么推广
  • 企业网站类型主要包括互动营销公司
  • 邯郸做网站服务商如何增加网站的外链
  • 徐州市做网站图片优化软件
  • 湖北孝感展示型网站建设价格aso优化服务
  • 连云港网站建设培训学校郑州网络推广效果
  • 企业网站哪家做得好淘宝怎样优化关键词
  • 杭州 企业 建网站销售网站排名
  • 视频网站建设要多少钱seo排名软件怎么做
  • 做网站金山区推广网站有效的方法
  • 全响应网站制作国内seo服务商
  • 58同城佛山网站建设福州网站建设
  • 门户网站创新的方式有代做网页设计平台
  • 网站开发工作如何任务放单平台
  • 网站制作学习快速seo整站优化排行
  • 青岛网站建设莫道网络淘宝权重查询
  • 亚马逊网站链接网站怎么收录到百度
  • 自己做的视频可以传别的网站去吗合肥百度推广优化
  • wordpress主题adava南京seo排名收费