mysql 一个表 关联 另外一个表的 字段

在MySQL中,一个表可以通过外键(FOREIGN KEY)与另一个表的字段关联。这通常用于创建一对一或一对多的关系。

假设我们有两个表:usersuser_profilesusers 表有一个字段 id 作为主键,user_profiles 表有一个字段 user_id 作为外键,关联到 users 表的 id 字段。

以下是创建这两个表和建立关联的SQL语句:

复制代码
CREATE TABLE users (
  id INT AUTO_INCREMENT PRIMARY KEY,
  username VARCHAR(255) NOT NULL
);
 
CREATE TABLE user_profiles (
  id INT AUTO_INCREMENT PRIMARY KEY,
  user_id INT,
  first_name VARCHAR(255),
  last_name VARCHAR(255),
  FOREIGN KEY (user_id) REFERENCES users(id)
);

在这个例子中,user_profiles 表的 user_id 字段是外键,它引用了 users 表的 id 字段。这样,user_profiles 表中的每一行都必须有一个有效的 user_id,它在 users 表中存在。如果尝试插入或更新 user_profiles 表的数据,而该数据中的 user_idusers 表中不存在,则操作会失败,因为外键约束被违反。

相关推荐
IT龟苓膏17 小时前
MySQL InnoDB 内存结构与性能调优:Buffer Pool、脏页、刷盘、临时表和 filesort 一篇讲清
数据库·mysql
城数派17 小时前
2026年500米分辨率DEM地形数据(全球/全国/分省/分市)
数据库·arcgis·信息可视化·数据分析·excel
AAA大运重卡何师傅(专跑国道)17 小时前
力扣hot100
服务器·前端·数据库
加号317 小时前
【MySQL】 审计功能深度解析:从原理到落地实践
数据库·mysql
还是鼠鼠18 小时前
AI掘金头条新闻系统 (Toutiao News)-获取用户信息
后端·python·mysql·fastapi·web
KaMeidebaby18 小时前
卡梅德生物技术快报|Western Blot 实验应用:肺肠轴机制研究全流程技术解析
前端·数据库·人工智能·算法·百度
雨辰AI18 小时前
MySQL 迁移至达梦 DM9 完整改造指南|99% SQL 零改动
java·开发语言·数据库·sql·mysql·政务
l1t18 小时前
DeepSeek总结的使用实体-组件-系统和基于存在性处理进行Python编程15-17
开发语言·数据库·python
guslegend18 小时前
AGENT.md,Skill与工程规范
java·开发语言·数据库
憧憬成为java架构高手的小白18 小时前
黑马八股redis
数据库·redis·缓存