Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- TESTING THE BEHAVIOUR OF ORACLE WHEN DROPPING A PRIMARY KEY CONSTRAINT USING A NAMED UNIQUE INDEX
- -- ORACLE DOCUMENTATION SAYS THE FOLLOWING:
- -- When you drop a primary key constraint:
- -- If the primary key was created using an existing index, then the index is not dropped.
- -- If the primary key was created using a system-generated index, then the index is dropped.
- -- CREATING A TABLE WITH A PK CONSTRAINT THAT USES A NAMED UNIQUE INDEX
- CREATE TABLE dummy_table (a int, b CHAR);
- CREATE UNIQUE INDEX dummy_ndx ON dummy_table(a);
- ALTER TABLE dummy_table ADD CONSTRAINT dummy_pk PRIMARY KEY (a) USING INDEX dummy_ndx;
- -- POPULATING THE TABLE WITH VALUES
- INSERT INTO dummy_table VALUES (1, 'a');
- INSERT INTO dummy_table VALUES (2, 'b');
- INSERT INTO dummy_table VALUES (3, 'c');
- -- ALTERING THE TABLE BY DROPPING THE PRIMARY KEY CONSTRAINT
- ALTER TABLE dummy_table DROP CONSTRAINT dummy_pk;
- -- ATTEMPTING TO INSERT RECORDS AFTER THE PK HAS BEEN DROPPED
- INSERT INTO dummy_table VALUES (4, 'd'); -- this should work
- INSERT INTO dummy_table VALUES (2, 'm'); -- this triggers a unique constraint error
Advertisement
RAW Paste Data
Copied
Advertisement