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

数据库约束

一.添加主键约束

1.使用DDL语句添加主键约束

alter table 表名 add primary key(列名); 示例: alter table emp add primary key(employee_id);

2.主键自增长

Mysql中的自动增长类型要求:

(1)一个表中只能有一个列为自动增长。

(2)自动增长的列的类型必须是整数类型。

(3)自动增长只能添加到具备主键约束与唯一性约束的列上。

(4)删除主键约束或唯一性约束,如果该列拥有自动增长能力,则需要先去掉自动增长然后在删除约束。

alter table 表名 modify 主键 类型 auto_increment; 示例: 将emp表中的employee_id主键修改为自增。 alter table emp modify employee_id int auto_increment;

3.在navicat中添加主键约束,打开对应表——设计表——一行的后面有个小钥匙即为添加约束成功,选中那一列,下方会显示自动递增,需要的话选中即可。

二.删除主键

1.使用DDL语句删除主键

alter table 表名 drop primary key; 示例: 注意:删除主键时,如果主键列具备自动增长能力,需要先去掉自动增长,然后在删除主键。 1.去掉自动增长 alter table emp modify employee_id int; 2.删除主键 alter table emp drop primary key;

2.使用navicat删除主键

直接设计表,然后点击小钥匙,去掉自动增长功能即可。

三.添加外键约束

1.使用DDL语句

alter table 表名add constraint 约束名 foreign key(列名) references 参照的表名(参照的列名); 示例: 1.创建部门表包含department_id,department_name,location_id. create table departments(department_id int,department_name varchar(30),location_id int); 2.修改部门表,向department_id列添加主键约束和自动增长 alter table departments add primary key(department_id); alter table departments modify department_id int auto_increment; 3.修改emp表,添加dept_id列。 alter table emp add column dept_id int; 4.向emp表中的dept_id列添加外键约束 alter table emp add constraint emp_fk foreign key(dept_id) references departments(department_id);

2.使用navicat添加

点击emp表,设计表——选择外键,在对应处输入我们要约束的内容即可。

四.删除外键约束

1.使用DDL语句

alter table 表名 drop foreign key 约束名; 示例: alter table emp drop foreign key emp_fk;

2.在navicat中删除外键

选中表——设计表——外键——右键删除即可。

http://www.cnnetsun.cn/news/51443.html

相关文章:

  • Blender主题定制终极指南:如何快速打造个性化界面
  • 【无标题】web第三周
  • Holo1.5开源:小模型颠覆UI智能交互,企业级AI代理成本骤降80%
  • 如何快速掌握umy-ui:面向Vue开发者的终极性能优化指南
  • 【流程】——若依项目前后端打包发布到服务器
  • Velero压缩引擎深度解析:从架构原理到实战调优
  • DolphinScheduler 2025技术生态:从零开始掌握分布式调度系统
  • 5大WebGPU错误终极解决方案:让WebLLM硬件加速不再失败
  • 一步成图革命:OpenAI一致性模型如何重塑2025生成式AI生态
  • GDevelop游戏引擎终极指南:从零基础到专业开发全流程
  • 生成对抗网络创建测试数据
  • java计算机毕业设计社区医疗服务管理系统 街区智慧健康服务管理平台 基层医疗信息综合管理系统
  • S7-1500TF + S210 绝对齿轮同步:双轴梯形图程序解析
  • 中望CAD2026:消除图纸中的重线
  • Docker实战:创建和使用Docker私有仓库
  • K8S-EFK日志收集实战指南
  • 外贸流程管理系统
  • 200万token上下文能力,并且越用越聪明!Google Research重构AI长期记忆
  • Flutter + OpenHarmony 国际化与无障碍(i18n a11y)深度实践:打造真正包容的鸿蒙应用
  • 风光储并网直流微电网Simulink仿真模型:光伏、风力与混合储能系统的集成
  • Python第三次作业
  • 44、深入探索GDB调试技巧与C/C++代码调试
  • 复盘 Git+GitHub SSH 配置:从权限报错到免密推送的全流程解决方案
  • Screenbox媒体播放器隐藏功能终极指南:从入门到精通
  • FlashAttention终极指南:突破大模型训练内存瓶颈的完整教程
  • 冒泡排序 ~ 背下来的 哭
  • 手把手教你学Simulink——机器人轨迹跟踪场景实例:基于Simulink的永磁同步电机关节空间直线轨迹跟踪控制仿真
  • 盈富宝典 通达信主图
  • 14、Python在不同场景下的应用与实践
  • X-AnyLabeling 自动数据标注保姆级教程:从安装到格式转换全流程