Use alter table to add foreign key with cascade delete : Alter Table « Table « Oracle PL / SQL






Use alter table to add foreign key with cascade delete

  

SQL>
SQL> -- Use alter table to add foreign key with cascade delete
SQL>
SQL>     CREATE TABLE supplier
  2      (      supplier_id     numeric(10)     not null,
  3             supplier_name   varchar2(50)    not null,
  4             contact_name    varchar2(50),
  5             CONSTRAINT supplier_pk PRIMARY KEY (supplier_id)
  6      );

Table created.

SQL>
SQL>
SQL>     CREATE TABLE products
  2      (      product_id      numeric(10)     not null,
  3             supplier_id     numeric(10)     not null,
  4             supplier_name   varchar2(50)    not null
  5      );

Table created.

SQL>
SQL>
SQL> ALTER TABLE products
  2  add CONSTRAINT fk_supplier
  3    FOREIGN KEY (supplier_id)
  4    REFERENCES supplier(supplier_id)
  5    ON DELETE CASCADE;

Table altered.

SQL>
SQL>
SQL>     desc products;
 Name                                                                                                  Null?    Type
 ----------------------------------------------------------------------------------------------------- -------- --------------------------------------------------------------------

 PRODUCT_ID                                                                                            NOT NULL NUMBER(10)
 SUPPLIER_ID                                                                                           NOT NULL NUMBER(10)
 SUPPLIER_NAME                                                                                         NOT NULL VARCHAR2(50)

SQL>     desc supplier;
 Name                                                                                                  Null?    Type
 ----------------------------------------------------------------------------------------------------- -------- --------------------------------------------------------------------

 SUPPLIER_ID                                                                                           NOT NULL NUMBER(10)
 SUPPLIER_NAME                                                                                         NOT NULL VARCHAR2(50)
 CONTACT_NAME                                                                                           VARCHAR2(50)

SQL>
SQL>     drop table products cascade constraints;

Table dropped.

SQL>
SQL>     drop table supplier cascade constraints;

Table dropped.

SQL>
SQL>

           
         
    
  








Related examples in the same category

1.Alter table to add Columns in Tables
2.Alter table to add two columns to a table
3.Use alter table command to add foreign key constraint
4.Use alter table command to add foreign key with more than two columns
5.Use alter table to add foreign key with cascade delete for more than one column
6.Alter table to add a foreign key ON DELETE SET NULL
7.Alter to add DELETE ON NULL with more than one column
8.Alter table to drop unused columns
9.Alter table to drop two columns in a single command
10.Marking Columns Unused
11.Alter table to change the storage
12.Alter table cache
13.Alter table to drop constraints
14.If you are adding more than one column, the column definitions should be enclosed in parentheses and separated by commas.
15.Make myCode a CACHE table.