`

同时删除oracle中有主外键关系的两张表

阅读更多

http://blog.sina.com.cn/s/blog_54eeb5d90100nqpb.html

同时删除oracle中有主外键关系的两张表
----先删除约束
select constraint_name  from user_constraints WHERE table_name ='表名';--得到约束名字
----然后删除表
alter table table_name drop constraint 约束名(cascade);
----使约束暂时无效
alter table table_name disable/enable constraint constraint_name;
无效以后也可以删除表

或者先删除带外键的表,然后再删除主键表

或者只要删除外键约束,就可以删除主键表,不会影响到外键表的数据

select 'alter table '||table_name||' drop constraint '||constraint_name||';' from user_constraints where constraint_type='R';


主键约束添加删除
1、创建表的同时创建主键约束
一、无命名 create table accounts ( accounts_number number primary key, accounts_balance number ); 二、有命名 create table accounts ( accounts_number number primary key, accounts_balance number, constraint yy primary key(accounts_number) );
2、删除表中已有的主键约束
一、无命名 SELECT * FROM USER_CONS_COLUMNS WHERE TALBE_NAME='accounts';
找出主键名 ALTER TABLE ACCOUNTS DROP CONSTRAINT SYS_C003063;
二、有命名 ALTER TABLE ACCOUNTS DROP CONTRAINT yy;
3、向表中添加主键约束 ALTER TABLE ACCOUNTS ADD CONSTRAINT PK_ACCOUNTS PRIMARY KEY(ACCOUNTS_NUMBER);

分享到:
评论

相关推荐

    sql外键的建立文档

    假设我们有两张表A和B,A表为主表,B表为从表,A的主键是`a_num`,B的主键也是`b_num`,同时B表的`a_num`字段作为外键引用A的`a_num`。创建这两张表的SQL语句如下: ```sql create table A ( a_num int primary...

    数据库中两张表之间的数据同步增加、删除与更新实现思路

    分别创建增加、删除、更新的触发器(Trigger)来达到两张表之间数据同步的目的。 1:数据同步增加: 如有两张表...数据同步删除: 如有两张表——A表和B表,创建触发器使当A表删除数据后B表也同步删除数据。其中B表与

    JSP+servlet+oracle实现主子表维护

    这两张表可能通过外键关联,使得在操作主表数据时可以影响到子表。 在具体实现过程中,开发者可能使用了JDBC(Java Database Connectivity)API来连接和操作Oracle数据库。JDBC提供了标准的接口,使得Java程序能够...

    oracle数据库学习笔记

    - **参照完整性**: 外键约束,确保引用的完整性,即主表中的每一项记录必须存在于从表中。 - **自定义完整性**: 通过定义约束条件(如 CHECK 约束)来限制列中的值。 #### 消除结果集中的重复行 使用 `DISTINCT` ...

    oracle基础.docx

    例如,如果“学生表”中有“导师编号”字段指向“导师表”的“编号”,那么“导师编号”就是“学生表”的外键。 **1.1.3 什么是关系型数据库系统** - **定义**: 完整的关系型数据库系统包含五个层次: - **硬件层...

    Oracle数据库第4讲.ppt

    4. **外键约束 (FOREIGN KEY)**:外键用于定义两个表之间的关联,通常是从表引用主表的主键或唯一键。这样可以确保数据的一致性,因为外键列的值必须存在于主表的主键列中或为NULL。 5. **检查约束 (CHECK)**:检查...

    oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串

    其一、就业面广:全球前100强企业99家都在使用ORACLE相关技术,中国政府机构,大中型企事业单位都能有ORACLE技术的工程师岗位。 其二、技术层次深:如果期望进入IT服务或者产品公司(类似毕博、DELL、IBM等),...

    Oraclec--h5_2实验报告

    这两种工具都是Oracle提供的标准工具,广泛应用于Oracle数据库的管理和开发工作中。 - **SQL*Plus**:是一个命令行工具,可以直接执行SQL语句并对结果进行处理。 - **Enterprise Manager Console**:提供了图形化...

    Oracle数据库课程设计报告总结计划.docx

    - **添加、删除、修改、查询**:用户可以轻松添加新的联系人信息,并能够随时修改或删除已有的联系人信息,同时提供便捷的查询功能。 - **分组管理**:支持联系人分组功能,方便对大量联系人进行分类管理。 - **头像...

    oracle考试题目.docx

    16. **Oracle中的权限有哪两种?** - 系统权限(System Privileges):允许用户执行特定类型的数据库操作。 - 对象权限(Object Privileges):允许用户访问特定的数据库对象。 17. **Oracle数据库的常用数据类型有...

    mysql中多表删除其中ID相同记录的方法

    3. **外键约束**:如果两个表之间有外键约束,那么在删除父表(主表)的记录时,配置为级联删除的外键会自动删除子表的相关记录。不过,这需要在数据库设计阶段就考虑到位。 在Oracle数据库中,虽然标准的`DELETE`...

    Oracle10G培训日志

    - **表的约束**:主键、外键、唯一性约束等。 - **修改表结构**:`ALTER TABLE table_name ADD column_name datatype;` - **删除表**:`DROP TABLE table_name;` #### 十七、索引 - **创建索引**:`CREATE INDEX ...

    jdbc基础和参考

    Component:数据库中采用一张表的设计,java中采用两个类的设计 ----------------------------------- Employee: id name salary award amount table id name salary award formula: --------------------------...

    2009达内SQL学习笔记

    当两个表有相同字段时必须加前缀,列名前需加表名和“.”,如“s_emp.id”。 1、用法:SELECT columns,prod2,prod3<列> FROM Table1,table2<表名> 分号结束 如: select id from s_emp; select last_name,name ...

    数据库试卷(某公司的题库)

    4) 参照完整性:这是关系数据库中的一个重要概念,它规定了外键字段的值必须是另一张表(主表)的主键字段已存在的值,或者为空。这样可以确保数据的一致性和准确性,防止因非法引用引起的错误。 5) RDBMS(关系...

    MySQL的面试题集锦

    主键也是候选键,按照惯例,候选键可以被指定为主键,并且可以用于任何外键引用。 Unix shell 登录 MySQL 如何使用 Unix shell 登录 MySQL?我们可以通过以下命令登录:[mysql dir]/bin/mysql。

Global site tag (gtag.js) - Google Analytics