`

删除所有外键,删除所有表

 
阅读更多
create or replace procedure pro_droptable is
cursor cur is select table_name from user_tables;
drop_sql varchar2(1000);
begin
/**删除所有的外键**/
for c in (select 'ALTER TABLE '||TABLE_NAME||' DROP  CONSTRAINT '||constraint_name||' ' as v_sql from user_constraints where CONSTRAINT_TYPE='R') loop
DBMS_OUTPUT.PUT_LINE(C.V_SQL);
begin
EXECUTE IMMEDIATE c.v_sql;
exception when others then
dbms_output.put_line(sqlerrm);
end;
end loop;
/** 删除表**/
  for tbname in cur loop
    begin
      drop_sql:='drop table '||tbname.table_name;
      execute immediate drop_sql;
    end;
  end loop;
end pro_droptable;
分享到:
评论

相关推荐

    自动删除所有表,有外键约束的表优先删除

    标题"自动删除所有表,有外键约束的表优先删除"涉及到的是一个数据库操作的场景,通常需要谨慎处理,因为错误的操作可能导致数据丢失或破坏数据库结构。在这个问题中,我们关注的是如何在有外键约束的环境中安全地...

    数据库删除所有外键脚本.sql

    Mysql数据库如何删除某一个数据库的所有外键并不删除相应的索引,一个sql脚本解决,无需知道外键的名称。

    删除数据库的所有表、存储过程、主键、外键、索引等

    这个过程通常涉及删除数据库中的所有表、存储过程、主键、外键以及索引等对象。下面我们将详细探讨这些概念及其在数据库中的作用,以及如何安全有效地执行删除操作。 首先,让我们逐一了解这些数据库元素: 1. 表...

    MySQL删除表的时候忽略外键约束的简单实现

    然而,有时候在开发或测试环境中,我们可能需要快速地删除所有表并重建数据库结构,这时就会遇到因外键约束导致的删除障碍。 当尝试删除一个表而该表包含其他表所依赖的字段时,MySQL会抛出错误1217(23000),提示...

    查询一个表的所有外键名称,主键名称,主键列ID,主键列名,外键表ID,外键列ID,外键列名

    查询一个表的所有外键名称,主键名称,主键列ID,主键列名,外键表ID,外键列ID,外键列名 级联更新,级联删除,索引名称,索引字段名,索引字段位置

    数据库表排序,主表子表放置外键约束

    "数据库表排序,主表子表放置外键约束"这一主题涉及到数据库规范化、外键约束、数据导入以及程序化解决方案。下面将详细阐述这些知识点。 首先,**外键约束**是关系数据库中的一种机制,用于确保一个表(子表)中的...

    数据库下所有表的外键约束查询

    用于查询某个数据库下所有表的外键约束情况,以便统一分析外键约束是否合理;主要查询出外键的,是否级联删除,级联更新,强制外键约束,强制复制约束始终状态。如想使用别的状态,请自行添加。下载的童鞋别下载错了...

    MySQL中利用外键实现级联删除、更新

    "MySQL 中利用外键实现级联删除、更新" 在 MySQL 中,外键是指在一个表中的一列或多列,引用另一个表中的主键或唯一索引。外键可以强制实施数据的一致性和完整性,使得数据更加可靠。外键在 MySQL 中的实现主要是...

    Mysql增加外键的方法

    在实际操作中,建立外键时还需要考虑其他一些因素,例如更新或删除某条记录时,是否需要级联删除或更新其他表中引用了此记录的数据,以及是否允许将引用的字段置为NULL或者设置默认值等等。正确使用外键不仅可以维护...

    MySQL外键的定义、作用、添加和删除

    例如,要删除 student 表中的外键约束,具体语句如下: mysql> alter table student drop foreign key FK_ID; 外键的使用可以带来许多好处,例如: 1. 提高数据的完整性:外键可以确保数据之间的参照关系,避免...

    mysql 删除外键.png

    其中,`表名`是包含外键的表,`外键名`是你要删除的外键的名称。 5. **重新启用外键检查**:在完成删除操作后,可以使用`SET FOREIGN_KEY_CHECKS = 1;`恢复外键检查。 6. **博文链接**:提供的博客链接...

    Access中如何建立外键关系

    在数据库设计中,外键(Foreign Key)是一种关键机制,用于在两个表之间建立关联,确保数据的一致性和完整性。在Microsoft Access中,通过外键关系可以实现表之间的链接,使得一个表的数据能够引用另一个表的数据。...

    LINQ通过外键级联添加和删除数据库的示例

    级联操作是指当主表中的记录被添加或删除时,根据外键约束,从表的相关记录也会自动进行相应的添加或删除。 在C#中,LINQ to SQL提供了对数据库操作的强大支持。在VS2008中,你可以创建一个LINQ to SQL类图,通过...

    在powerdesigen中建立主外键关联表

    在PowerDesigner中创建主外键关联表是数据库设计中的一个重要环节。PowerDesigner是一款强大的数据库建模工具,它允许用户通过图形化界面来设计和管理数据库结构。以下将详细讲解如何在PowerDesigner中进行主外键...

    mysql外键的添加与删除参考.pdf

    这条语句将在ss_accesscode表中添加一个外键约束,該外键约束将vccId字段与ss_vcc表中的vccId字段关联起来,并且在删除ss_vcc表中的记录时,相应的ss_accesscode表中的记录也将被删除(ON DELETE CASCADE)。...

    sql外键的建立文档

    当在主表中插入、更新或删除记录时,外键约束会检查从表中的对应记录,确保操作的合法性。 创建外键的方法有两种: 1. 创建表时定义外键: 假设我们有两张表A和B,A表为主表,B表为从表,A的主键是`a_num`,B的...

    mysql外键的设置方法

    - **ON DELETE CASCADE**:当主表中的记录被删除时,所有相关的外键记录也将被删除。 示例代码如下: ```sql ALTER TABLE pc ADD CONSTRAINT fk_cpu_model FOREIGN KEY (cpumodel) REFERENCES parts(model) ON ...

    删除并重新创建SQL Server中所有外键SQL脚本

    然而,在某些情况下,如数据库重构、性能优化或迁移时,可能需要删除并重新创建所有的外键。下面将详细讨论如何通过T-SQL语句来实现这个过程。 首先,我们要理解什么是外键(Foreign Key)。外键是表中的一个字段,...

    外键关联整理脚本

    3. **级联操作**:外键可以配置为支持级联操作,如`ON DELETE CASCADE`,当父表中的记录被删除时,所有关联的子表记录也会被自动删除。 4. **数据库设计范式**:外键关联是实现第三范式(3NF)和更高范式的关键,它...

Global site tag (gtag.js) - Google Analytics