在数据库管理工具中设置可选择的字段,跳过外键约束清空数据表方法

应用软件:Navicat Premium 16(数据库管理工具

Navicat premium是一款数据库管理工具。将此工具连接数据库,你可以从中看到各种数据库的详细信息。包括报错,等等。当然,你也可以通过他,登录数据库,进行各种操作 

数据库:Mysql 8.0

技巧一:在数据库管理工具中设置可选择的字段

        在学了数据库语言后,但是由于不经常使用,导至一些sql语句在使用的时候忘记或者在使用的时候由于sql语句要想使用不仅仅只是一句话的事,还需要有较多的铺垫,此时数据库管理工具就可以提供很便捷的操作(图形界面操作

 比如,我们想让这个category字段不在每次都要手动输入服务类型,变成可以选择的数据,就可以这样做。

第一步:右键要设置的数据表,选择设计数据表 。

第二步:找到要改的行,选择数据类型为enum。

 

第三步: 在底部找到Values,输入要添加的数据,使用单引号括起来并用逗号隔开(必须是英文,否则会报错)最后一个数据不用逗号。

也可以在这添加:点击后面有三个点的小方格,在其中输入。

 

第四步:保存更改。

第五步:查看效果,是否变为可以选择的状态了。

 

 注释:如果在保存时遇到错误,是因为原先的字段中已经有了数据,现在更改的数据会有冲突,所以无法保存,建议使用Delete删除这个字段中的数据在保存。

技巧二:跳过外键约束清空数据表方法

通常我们的数据库会有很多关联外键约束,导致我们想删除或者添加一个字段或者表格时会牵一发而动全身,很烦人,所以就有了此方法,先禁用外键约束,然后你该删删,该改改。

第一步:打开 Navicat 的查询窗口,连接到你的 MySQL 数据库,右键点击数据库连接 -> 选择 New Query(新建查询)。

第二步:执行禁用外键检查命令,在查询窗口中输入以下 SQL 并执行:
-- 关闭外键约束检查
SET FOREIGN_KEY_CHECKS = 0;

第三步:清空service表数据:
-- 使用 DELETE 清空数据(避免 TRUNCATE 的外键限制)
DELETE FROM services;

-- 或使用 TRUNCATE(仅当 services 表未被其他表外键引用时可用)
-- TRUNCATE TABLE services;

还是同样的步骤,点击运行,查看是否执行成功。

第四步:恢复外键约束。
-- 重新启用外键约束检查
SET FOREIGN_KEY_CHECKS = 1;

注意事项:

  • DELETE vs TRUNCATE

    • DELETE:逐行删除,可触发事务日志,兼容外键禁用场景。

    • TRUNCATE:直接清空表结构,效率更高,但若 services 是其他表的父表(被外键引用),可能仍会失败。

  • 数据一致性风险:跳过外键检查后,若其他表依赖 services 的数据,会导致“孤立数据”。清空前请确保无关联依赖 

还有什么问题可以提出来,大家讨论一下!!! 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值