定义外键
外键是非常重要的概念,也是体现关系数据库中“关系”二字的体现,通过使用外键,我们才能把互相独立的表关联起来,从而表达丰富的业务语义。
外键是定义在源表中的,定义位置同样为所有字段定义的后面,使用FOREIGN KEY关键字来定义外键字段,并且使用REFERENCES关键字来定义目标表名以及目标表中被关联的字段,格式为:
FOREIGN KEY 外键字段名称REFERENCES 目标表名(被关联的字段名称)
比如我们创建一张部门信息表,表中记录了部门主键FId、部门名称FName、部门级别FLevel等字段,建表SQL如下:
MYSQL,MSSQLServer:
CREATE TABLE T_Department (FId VARCHAR(20),FName VARCHAR(20),
FLevel INT,PRIMARY KEY (FId))
Oracle:
CREATE TABLE T_Department (FId VARCHAR2(20),FName VARCHAR2(20),
FLevel NUMBER (10) ,PRIMARY KEY (FId))
DB2:
CREATE TABLE T_Department (FId VARCHAR(20) NOT NULL,FName VARCHAR(20),
FLevel INT,PRIMARY KEY (FId))
接着创建员工信息表,表中记录工号、姓名以及所属部门等信息,为了能够建立同部门信息表之间的关联关系,我们在员工信息表中保存部门信息表中的主键,保存这个主键的字段就被称为员工信息表中指向部门信息表的外键。
建表SQL如下:
MYSQL,MSSQLServer,DB2:
CREATE TABLE T_Employee (FNumber VARCHAR(20),FName VARCHAR(20),
FDepartmentId VARCHAR(20),
FOREIGN KEY (FDepartmentId) REFERENCES T_Department(FId))
Oracle:
CREATE TABLE T_Employee (FNumber VARCHAR2(20),FName VARCHAR2(20),
FDepartmentId VARCHAR2(20),
FOREIGN KEY (FDepartmentId) REFERENCES T_Department(FId))
https://github.com/godmaybelieve
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理