无法截断表 ‘tbl_***‘,因为该表正由 FOREIGN KEY 约束引用。

2023-10-16 03:50

本文主要是介绍无法截断表 ‘tbl_***‘,因为该表正由 FOREIGN KEY 约束引用。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

错误背景:
有两张表,一张是主表(tbl_invoice),一张是明细表(tbl_invoice_detail),

出于某种原因现在需要清空数据库,保留数据库结构,为了使自增长字段重新从1开始,我使用了truncate语法进行操作:
在这里插入图片描述

由于主表和明细表之间存在主外键关系,我先清空了明细表,然后清空主表的时候发生了上图中的错误
补充一点:
(tbl_invoice表中的主键id和tbl_invoice_detail的字段invoice_id是主外键关系)

这时后应该怎么做呢?

查询外键(在主表中查询):

--在主表中查询主外键关系
exec  sp_helpconstraint 'tbl_invoice'

执行结果:
在这里插入图片描述

删除外键(在明细表中删除外键):

--在明细表中删除外键
alter table tbl_invoice_detail drop constraint fk_tbl_invoice_detail_invoice_id

执行结果:
在这里插入图片描述

tbl_invoice_detail是明细表的表名
invoice_id是明细表中的外键

这时候就可以truncate主表了

truncate table tbl_invoice

执行结果:
在这里插入图片描述
可以看到主表已经truncate成功了。

把删除的外键再添加回去

--在明细表中把删除的主外键添加上
alter table tbl_invoice_detail
add constraint fk_tbl_invoice_detail_invoice_id foreign key (invoice_id) references tbl_invoice(id)

在这里插入图片描述

后来又发现一种简单的方法:

无法截断表 ‘tbl_******** ‘,因为该表正由 FOREIGN KEY 约束引用点击进来看看吧

这篇关于无法截断表 ‘tbl_***‘,因为该表正由 FOREIGN KEY 约束引用。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/218844

相关文章

kali linux 无法登录root的问题及解决方法

《kalilinux无法登录root的问题及解决方法》:本文主要介绍kalilinux无法登录root的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录kali linux 无法登录root1、问题描述1.1、本地登录root1.2、ssh远程登录root2、

SpringValidation数据校验之约束注解与分组校验方式

《SpringValidation数据校验之约束注解与分组校验方式》本文将深入探讨SpringValidation的核心功能,帮助开发者掌握约束注解的使用技巧和分组校验的高级应用,从而构建更加健壮和可... 目录引言一、Spring Validation基础架构1.1 jsR-380标准与Spring整合1

如何解决mmcv无法安装或安装之后报错问题

《如何解决mmcv无法安装或安装之后报错问题》:本文主要介绍如何解决mmcv无法安装或安装之后报错问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mmcv无法安装或安装之后报错问题1.当我们运行YOwww.chinasem.cnLO时遇到2.找到下图所示这里3.

Java枚举类实现Key-Value映射的多种实现方式

《Java枚举类实现Key-Value映射的多种实现方式》在Java开发中,枚举(Enum)是一种特殊的类,本文将详细介绍Java枚举类实现key-value映射的多种方式,有需要的小伙伴可以根据需要... 目录前言一、基础实现方式1.1 为枚举添加属性和构造方法二、http://www.cppcns.co

电脑win32spl.dll文件丢失咋办? win32spl.dll丢失无法连接打印机修复技巧

《电脑win32spl.dll文件丢失咋办?win32spl.dll丢失无法连接打印机修复技巧》电脑突然提示win32spl.dll文件丢失,打印机死活连不上,今天就来给大家详细讲解一下这个问题的解... 不知道大家在使用电脑的时候是否遇到过关于win32spl.dll文件丢失的问题,win32spl.dl

pip无法安装osgeo失败的问题解决

《pip无法安装osgeo失败的问题解决》本文主要介绍了pip无法安装osgeo失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 进入官方提供的扩展包下载网站寻找版本适配的whl文件注意:要选择cp(python版本)和你py

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于

Flask解决指定端口无法生效问题

《Flask解决指定端口无法生效问题》文章讲述了在使用PyCharm开发Flask应用时,启动地址与手动指定的IP端口不一致的问题,通过修改PyCharm的运行配置,将Flask项目的运行模式从Fla... 目录android问题重现解决方案问题重现手动指定的IP端口是app.run(host='0.0.

Android WebView无法加载H5页面的常见问题和解决方法

《AndroidWebView无法加载H5页面的常见问题和解决方法》AndroidWebView是一种视图组件,使得Android应用能够显示网页内容,它基于Chromium,具备现代浏览器的许多功... 目录1. WebView 简介2. 常见问题3. 网络权限设置4. 启用 JavaScript5. D

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin