2026-03-12 20:23:15
This commit is contained in:
90
idev/example_drop_unused_column.sql
Normal file
90
idev/example_drop_unused_column.sql
Normal file
@@ -0,0 +1,90 @@
|
||||
-- +----------------------------------------------------------------------------+
|
||||
-- | Jeffrey M. Hunter |
|
||||
-- | jhunter@idevelopment.info |
|
||||
-- | www.idevelopment.info |
|
||||
-- |----------------------------------------------------------------------------|
|
||||
-- | Copyright (c) 1998-2012 Jeffrey M. Hunter. All rights reserved. |
|
||||
-- |----------------------------------------------------------------------------|
|
||||
-- | DATABASE : Oracle |
|
||||
-- | FILE : example_drop_unused_column.sql |
|
||||
-- | CLASS : Examples |
|
||||
-- | PURPOSE : Example SQL syntax used to drop unused columns from a table. |
|
||||
-- | NOTE : As with any code, ensure to test this script in a development |
|
||||
-- | environment before attempting to run it in production. |
|
||||
-- +----------------------------------------------------------------------------+
|
||||
|
||||
connect scott/tiger
|
||||
|
||||
set serveroutput on
|
||||
|
||||
Prompt ======================
|
||||
Prompt DROP existing table...
|
||||
Prompt ======================
|
||||
Prompt
|
||||
accept a1 Prompt "Hit <ENTER> to continue";
|
||||
|
||||
DROP TABLE d_table
|
||||
/
|
||||
|
||||
|
||||
Prompt =======================
|
||||
Prompt CREATE TESTING TABLE...
|
||||
Prompt =======================
|
||||
Prompt
|
||||
accept a1 Prompt "Hit <ENTER> to continue";
|
||||
|
||||
CREATE TABLE d_table (
|
||||
id_no NUMBER
|
||||
, name VARCHAR2(100)
|
||||
, d_column VARCHAR2(100)
|
||||
)
|
||||
/
|
||||
|
||||
|
||||
Prompt ========================
|
||||
Prompt MARK COLUMN AS UNUSED...
|
||||
Prompt ========================
|
||||
Prompt
|
||||
accept a1 Prompt "Hit <ENTER> to continue";
|
||||
|
||||
ALTER TABLE d_table SET UNUSED COLUMN d_column;
|
||||
|
||||
|
||||
Prompt =======================================
|
||||
Prompt QUERY ALL TABLES WITH UNUSED COLUMNS...
|
||||
Prompt =======================================
|
||||
Prompt
|
||||
accept a1 Prompt "Hit <ENTER> to continue";
|
||||
|
||||
SELECT * FROM sys.dba_unused_col_tabs;
|
||||
|
||||
|
||||
Prompt ======================================
|
||||
Prompt PHYSICALLY REMOVE THE UNUSED COLUMN...
|
||||
Prompt ======================================
|
||||
Prompt
|
||||
accept a1 Prompt "Hit <ENTER> to continue";
|
||||
|
||||
ALTER TABLE d_table DROP UNUSED COLUMNS;
|
||||
|
||||
|
||||
Prompt ================================================
|
||||
Prompt IF YOU WANTED TO PHYSICALLY REMOVE THE COLUMN...
|
||||
Prompt ================================================
|
||||
Prompt
|
||||
accept a1 Prompt "Hit <ENTER> to continue";
|
||||
|
||||
-- ALTER TABLE d_table DROP COLUMN d_column;
|
||||
|
||||
|
||||
Prompt =========================================
|
||||
Prompt OPTIONALLY SYNTAX FOR REMOVING COLUMNS...
|
||||
Prompt =========================================
|
||||
Prompt
|
||||
Prompt ALTER TABLE d_table DROP COLUMN d_column CASCADE CONSTRAINTS;
|
||||
Prompt ALTER TABLE d_table DROP COLUMN d_column INVALIDATE;
|
||||
Prompt ALTER TABLE d_table DROP COLUMN d_column CHECKPOINT 1000;
|
||||
Prompt
|
||||
accept a1 Prompt "Hit <ENTER> to EXIT";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user