SlideShare una empresa de Scribd logo
1 de 30
Chapter – 9

Creating and Managing Tables

DDL
Database Objects


An Oracle database can contain multiple data structures.



Each structure should be outlined in the database design so that it can
be created during the build stage of database development.



Table: Stores data.



View: Subset of data from one or more tables.



Sequence: Numeric value generator.



Index: Improves the performance of some queries.



Synonym: Gives alternative names to an objects.
Oracle9i

Table Structures


Tables can be created at any time, even while users are using
the database.



You do not need to specify the size of any table.



The size is ultimately defined by the amount of space allocated
to the database as a whole.



It is important, however, to estimate how much space a table will
use over time.



Table structure can be modified online.
Naming Rules
Table names and column names:


Must begin with a letter



Must be 1–30 characters long



Must contain only A–Z, a–z, 0–9, _, $, and #



Must not duplicate the name of another object owned by the
same user



Must not be an Oracle server reserved word
CREATE TABLE Statement
You must have:


CREATE TABLE privilege



A storage area

You specify:


Table name



Column name, column data type, and column size
Referencing Another User’s Tables


A schema is a collection of objects.



Schema objects are the logical structures that directly refer to the data in a
database.



Schema objects include tables, views, synonyms, sequences, stored
procedures, indexes, clusters, and database links.



If a table does not belong to the user, the owner’s name must be prefixed to the
table.



For example,
if there is a schema named USER_B, and USER_B has an EMPLOYEES table,
then specify the following to retrieve data from that table:

SELECT * FROM user_b.employees;
The DEFAULT Option


Specify a default value for a column during an insert.



Literal values, expressions, or SQL functions are legal
values.



Another column’s name or a pseudo column are illegal
values.



The default data type must match the column data type.
Creating Tables


Create the table.



Confirm table creation.
Tables in the Oracle Database
User Tables:


Are a collection of tables created and maintained by the user



Contain user information

Data Dictionary:


Is a collection of tables created and maintained by the Oracle
Server



Contain database information
Data Dictionary views


User tables are tables created by the user, such as EMPLOYEES.



There is another collection of tables and views in the Oracle database known as
the data dictionary.



This collection is created and maintained by the Oracle server and contains
information about the database.



All data dictionary tables are owned by the SYS user. The base tables are rarely
accessed by the user because the information in them is not easy to
understand.



Therefore, users typically access data dictionary views because the information
is presented in a format that is easier to understand.



Information stored in the data dictionary includes names of the Oracle server
users, privileges granted to users, database object names, table
constraints, and auditing information.
Data Dictionary views


There are four categories of data dictionary views; each category has a distinct
prefix that reflects its intended use.
Querying the Data Dictionary


See the names of tables owned by the user.



View distinct object types owned by the user.



View tables, views, synonyms, and sequences owned by the user.



This is same as > SELECT * FROM CAT;
Data Types
Data Types (continued)
DateTime Data Types
Datetime enhancements with Oracle9i:


New Datetime data types have been introduced.



New data type storage is available.



Enhancements have been made to time zones and local time zone.
Creating a Table by Using a

Subquery Syntax


Create a table and insert rows by combining the CREATE TABLE statement and the AS
subquery option.



Match the number of specified columns to the number of subquery columns.



Define columns with column names and default values.



If column specifications are given, the number of columns must equal the number of
columns in the subquery SELECT list.



If no column specifications are given, the column names of the table are the same as the
column names in the subquery.



The integrity rules are not passed onto the new table, only the column data type
definitions.
Creating a Table by Using a Subquery
The ALTER TABLE Statement
Use the ALTER TABLE statement to:


Add a new column



Modify an existing column



Define a default value for the new column



Drop a column
The ALTER TABLE Statement
Adding a Column


You use the ADD clause to add columns.



You cannot specify where the column is to appear.The new
column becomes the last column.



If a table already contains rows when a column is added, then
the new column is initially null for all the rows.
Modifying a Column


You can change a column’s data type, size, and default value.



A change to the default value affects only subsequent insertions to the table.



You can increase the width of numeric or character columns.



You can decrease the width of a column only if the column contains only null values or if
the table has no rows.



You can change the data type only if the column contains null values.



You can convert a CHAR column to the VARCHAR2 data type or convert a VARCHAR2
column to the CHAR data type only if the column contains null values or if you do not
change the size.



A change to the default value of a column affects only subsequent insertions to the table.
Dropping a Column


Use the DROP COLUMN clause to drop columns you no longer need from the table.



This is a feature available in Oracle8i and later.



The column may or may not contain data.



Using the ALTER TABLE statement, only one column can be dropped at a time.



The table must have at least one column remaining in it after it is altered.



Once a column is dropped, it cannot be recovered.



When a column is dropped from a table, any other columns in that table that are
marked with the SET UNUSED option are dropped too.
The SET UNUSED Option


You use the SET UNUSED option to mark one or more columns as unused, so that they
can be dropped when the demand on system resources is lower.



You use the DROP UNUSED COLUMNS option to remove the columns that are marked as
unused.



Unused columns are treated as if they were dropped, even though their column data
remains in the table’s rows.



After a column has been marked as unused, you have no access to that column. A
SELECT * query will not retrieve data from unused columns.



In addition, the names and types of columns marked unused will not be displayed
during a DESCRIBE, and you can add to the table a new column with the same name
as an unused column.



SET UNUSED information is stored in the USER_UNUSED_COL_TABS dictionary view.
SET UNUSED

Example :
Dropping a Table


Syntax :



All data and structure in the table is deleted.



Any pending transactions are committed.



All indexes are dropped.



Any views and synonyms remain but are invalid.



You cannot roll back the DROP TABLE statement.



As with all DDL statements, DROP TABLE is committed automatically.
Changing the Name of an Object -

RENAME



To change the name of a table, view, sequence, or synonym, you execute the
RENAME statement.



You must be the owner of the object.
Truncating a Table
The TRUNCATE TABLE statement:


Removes all rows from a table



Releases the storage space used by that table



You cannot roll back row removal when using TRUNCATE.



Alternatively, you can remove rows by using the DELETE statement.



Truncating a table does not fire the delete triggers of the table.



If the table is the parent of a referential integrity constraint, you cannot truncate the table.
Disable the constraint before issuing the TRUNCATE statement.


Adding Comments to a Table


You can add comments to a table or column by using the COMMENT statement.

Comments can be viewed through the data dictionary views:


ALL_COL_COMMENTS



USER_COL_COMMENTS



ALL_TAB_COMMENTS



USER_TAB_COMMENTS
Summary

Más contenido relacionado

La actualidad más candente

SQL select statement and functions
SQL select statement and functionsSQL select statement and functions
SQL select statement and functions
Vikas Gupta
 

La actualidad más candente (20)

SQL select statement and functions
SQL select statement and functionsSQL select statement and functions
SQL select statement and functions
 
Introduction of sql server indexing
Introduction of sql server indexingIntroduction of sql server indexing
Introduction of sql server indexing
 
SQL(DDL & DML)
SQL(DDL & DML)SQL(DDL & DML)
SQL(DDL & DML)
 
SQL JOINS
SQL JOINSSQL JOINS
SQL JOINS
 
SQL Constraints
SQL ConstraintsSQL Constraints
SQL Constraints
 
Introduction to-sql
Introduction to-sqlIntroduction to-sql
Introduction to-sql
 
Chapter8 pl sql
Chapter8 pl sqlChapter8 pl sql
Chapter8 pl sql
 
SQL Functions
SQL FunctionsSQL Functions
SQL Functions
 
SQL Queries Information
SQL Queries InformationSQL Queries Information
SQL Queries Information
 
Sql queries presentation
Sql queries presentationSql queries presentation
Sql queries presentation
 
SQL
SQLSQL
SQL
 
Sql Basics And Advanced
Sql Basics And AdvancedSql Basics And Advanced
Sql Basics And Advanced
 
SQL Overview
SQL OverviewSQL Overview
SQL Overview
 
Lab2 ddl commands
Lab2 ddl commandsLab2 ddl commands
Lab2 ddl commands
 
SQL JOIN
SQL JOINSQL JOIN
SQL JOIN
 
Sql operators & functions 3
Sql operators & functions 3Sql operators & functions 3
Sql operators & functions 3
 
Sql joins
Sql joinsSql joins
Sql joins
 
Advanced Sql Training
Advanced Sql TrainingAdvanced Sql Training
Advanced Sql Training
 
Basic sql Commands
Basic sql CommandsBasic sql Commands
Basic sql Commands
 
Sql(structured query language)
Sql(structured query language)Sql(structured query language)
Sql(structured query language)
 

Destacado

Data definition language (ddl)
Data definition language (ddl)Data definition language (ddl)
Data definition language (ddl)
Dex Winadha
 
Tutorial for using SQL in Microsoft Access
Tutorial for using SQL in Microsoft AccessTutorial for using SQL in Microsoft Access
Tutorial for using SQL in Microsoft Access
mcclellm
 

Destacado (20)

Oracle: DDL
Oracle: DDLOracle: DDL
Oracle: DDL
 
Data definition language (ddl)
Data definition language (ddl)Data definition language (ddl)
Data definition language (ddl)
 
SQL Basic Queries
SQL Basic Queries SQL Basic Queries
SQL Basic Queries
 
Dml and ddl
Dml and ddlDml and ddl
Dml and ddl
 
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
Structured Query Language (SQL) - Lecture 5 - Introduction to Databases (1007...
 
What Is SQL?
What Is SQL?What Is SQL?
What Is SQL?
 
1 ddl
1 ddl1 ddl
1 ddl
 
Part 6 ddl dan dml (case studiies)
Part 6  ddl dan dml (case studiies)Part 6  ddl dan dml (case studiies)
Part 6 ddl dan dml (case studiies)
 
Part 7 ddl dan dml lant..retriving data up
Part 7  ddl dan dml lant..retriving data upPart 7  ddl dan dml lant..retriving data up
Part 7 ddl dan dml lant..retriving data up
 
DDL DML sysytems
DDL DML sysytemsDDL DML sysytems
DDL DML sysytems
 
Les01 Writing Basic Sql Statements
Les01 Writing Basic Sql StatementsLes01 Writing Basic Sql Statements
Les01 Writing Basic Sql Statements
 
Writing Basic SQL SELECT Statements
Writing Basic SQL SELECT StatementsWriting Basic SQL SELECT Statements
Writing Basic SQL SELECT Statements
 
Creating and Managing Tables -Oracle Data base
Creating and Managing Tables -Oracle Data base Creating and Managing Tables -Oracle Data base
Creating and Managing Tables -Oracle Data base
 
Access 2007 lecture notes students
Access 2007 lecture notes studentsAccess 2007 lecture notes students
Access 2007 lecture notes students
 
Sql joins inner join self join outer joins
Sql joins inner join self join outer joinsSql joins inner join self join outer joins
Sql joins inner join self join outer joins
 
Tutorial for using SQL in Microsoft Access
Tutorial for using SQL in Microsoft AccessTutorial for using SQL in Microsoft Access
Tutorial for using SQL in Microsoft Access
 
Types Of Join In Sql Server - Join With Example In Sql Server
Types Of Join In Sql Server - Join With Example In Sql ServerTypes Of Join In Sql Server - Join With Example In Sql Server
Types Of Join In Sql Server - Join With Example In Sql Server
 
DML Commands
DML CommandsDML Commands
DML Commands
 
SQL Joins and Query Optimization
SQL Joins and Query OptimizationSQL Joins and Query Optimization
SQL Joins and Query Optimization
 
Sql Server 2012
Sql Server 2012Sql Server 2012
Sql Server 2012
 

Similar a SQL DDL

DDL. data defination language for creating database
DDL. data defination language for creating databaseDDL. data defination language for creating database
DDL. data defination language for creating database
SHAKIR325211
 
Introduction to Structured Query Language (SQL).ppt
Introduction to Structured Query Language (SQL).pptIntroduction to Structured Query Language (SQL).ppt
Introduction to Structured Query Language (SQL).ppt
Ashwini Rao
 
SQL.pptx for the begineers and good know
SQL.pptx for the begineers and good knowSQL.pptx for the begineers and good know
SQL.pptx for the begineers and good know
PavithSingh
 
Creating, altering and dropping tables
Creating, altering and dropping tablesCreating, altering and dropping tables
Creating, altering and dropping tables
punu_82
 
Creating database using sql commands
Creating database using sql commandsCreating database using sql commands
Creating database using sql commands
Belle Wx
 

Similar a SQL DDL (20)

Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
Unit-1 SQL fundamentals.docx SQL commands used to create table, insert values...
 
ADBMS Unit-II c
ADBMS Unit-II cADBMS Unit-II c
ADBMS Unit-II c
 
MySQL Essential Training
MySQL Essential TrainingMySQL Essential Training
MySQL Essential Training
 
Les09
Les09Les09
Les09
 
Les10 Creating And Managing Tables
Les10 Creating And Managing TablesLes10 Creating And Managing Tables
Les10 Creating And Managing Tables
 
Les10
Les10Les10
Les10
 
Module 3
Module 3Module 3
Module 3
 
DBMS.pdf
DBMS.pdfDBMS.pdf
DBMS.pdf
 
Mysql cheatsheet
Mysql cheatsheetMysql cheatsheet
Mysql cheatsheet
 
Oraclesql
OraclesqlOraclesql
Oraclesql
 
DDL. data defination language for creating database
DDL. data defination language for creating databaseDDL. data defination language for creating database
DDL. data defination language for creating database
 
Introduction to Structured Query Language (SQL).ppt
Introduction to Structured Query Language (SQL).pptIntroduction to Structured Query Language (SQL).ppt
Introduction to Structured Query Language (SQL).ppt
 
SQL.pptx for the begineers and good know
SQL.pptx for the begineers and good knowSQL.pptx for the begineers and good know
SQL.pptx for the begineers and good know
 
SQL
SQLSQL
SQL
 
Creating, altering and dropping tables
Creating, altering and dropping tablesCreating, altering and dropping tables
Creating, altering and dropping tables
 
Creating database using sql commands
Creating database using sql commandsCreating database using sql commands
Creating database using sql commands
 
DBMS and SQL(structured query language) .pptx
DBMS and SQL(structured query language) .pptxDBMS and SQL(structured query language) .pptx
DBMS and SQL(structured query language) .pptx
 
Database COMPLETE
Database COMPLETEDatabase COMPLETE
Database COMPLETE
 
Introduction to Oracle Database.pptx
Introduction to Oracle Database.pptxIntroduction to Oracle Database.pptx
Introduction to Oracle Database.pptx
 
SQL
SQLSQL
SQL
 

Más de Vikas Gupta (6)

Sql DML
Sql DMLSql DML
Sql DML
 
Sql DML
Sql DMLSql DML
Sql DML
 
SQL subquery
SQL subquerySQL subquery
SQL subquery
 
Sql join
Sql  joinSql  join
Sql join
 
Join sql
Join sqlJoin sql
Join sql
 
Sql intro
Sql introSql intro
Sql intro
 

Último

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Último (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

SQL DDL

  • 1. Chapter – 9 Creating and Managing Tables DDL
  • 2. Database Objects  An Oracle database can contain multiple data structures.  Each structure should be outlined in the database design so that it can be created during the build stage of database development.  Table: Stores data.  View: Subset of data from one or more tables.  Sequence: Numeric value generator.  Index: Improves the performance of some queries.  Synonym: Gives alternative names to an objects.
  • 3. Oracle9i Table Structures  Tables can be created at any time, even while users are using the database.  You do not need to specify the size of any table.  The size is ultimately defined by the amount of space allocated to the database as a whole.  It is important, however, to estimate how much space a table will use over time.  Table structure can be modified online.
  • 4. Naming Rules Table names and column names:  Must begin with a letter  Must be 1–30 characters long  Must contain only A–Z, a–z, 0–9, _, $, and #  Must not duplicate the name of another object owned by the same user  Must not be an Oracle server reserved word
  • 5. CREATE TABLE Statement You must have:  CREATE TABLE privilege  A storage area You specify:  Table name  Column name, column data type, and column size
  • 6. Referencing Another User’s Tables  A schema is a collection of objects.  Schema objects are the logical structures that directly refer to the data in a database.  Schema objects include tables, views, synonyms, sequences, stored procedures, indexes, clusters, and database links.  If a table does not belong to the user, the owner’s name must be prefixed to the table.  For example, if there is a schema named USER_B, and USER_B has an EMPLOYEES table, then specify the following to retrieve data from that table: SELECT * FROM user_b.employees;
  • 7. The DEFAULT Option  Specify a default value for a column during an insert.  Literal values, expressions, or SQL functions are legal values.  Another column’s name or a pseudo column are illegal values.  The default data type must match the column data type.
  • 8. Creating Tables  Create the table.  Confirm table creation.
  • 9. Tables in the Oracle Database User Tables:  Are a collection of tables created and maintained by the user  Contain user information Data Dictionary:  Is a collection of tables created and maintained by the Oracle Server  Contain database information
  • 10. Data Dictionary views  User tables are tables created by the user, such as EMPLOYEES.  There is another collection of tables and views in the Oracle database known as the data dictionary.  This collection is created and maintained by the Oracle server and contains information about the database.  All data dictionary tables are owned by the SYS user. The base tables are rarely accessed by the user because the information in them is not easy to understand.  Therefore, users typically access data dictionary views because the information is presented in a format that is easier to understand.  Information stored in the data dictionary includes names of the Oracle server users, privileges granted to users, database object names, table constraints, and auditing information.
  • 11. Data Dictionary views  There are four categories of data dictionary views; each category has a distinct prefix that reflects its intended use.
  • 12. Querying the Data Dictionary  See the names of tables owned by the user.  View distinct object types owned by the user.  View tables, views, synonyms, and sequences owned by the user.  This is same as > SELECT * FROM CAT;
  • 15. DateTime Data Types Datetime enhancements with Oracle9i:  New Datetime data types have been introduced.  New data type storage is available.  Enhancements have been made to time zones and local time zone.
  • 16.
  • 17. Creating a Table by Using a Subquery Syntax  Create a table and insert rows by combining the CREATE TABLE statement and the AS subquery option.  Match the number of specified columns to the number of subquery columns.  Define columns with column names and default values.  If column specifications are given, the number of columns must equal the number of columns in the subquery SELECT list.  If no column specifications are given, the column names of the table are the same as the column names in the subquery.  The integrity rules are not passed onto the new table, only the column data type definitions.
  • 18. Creating a Table by Using a Subquery
  • 19. The ALTER TABLE Statement Use the ALTER TABLE statement to:  Add a new column  Modify an existing column  Define a default value for the new column  Drop a column
  • 20. The ALTER TABLE Statement
  • 21. Adding a Column  You use the ADD clause to add columns.  You cannot specify where the column is to appear.The new column becomes the last column.  If a table already contains rows when a column is added, then the new column is initially null for all the rows.
  • 22. Modifying a Column  You can change a column’s data type, size, and default value.  A change to the default value affects only subsequent insertions to the table.  You can increase the width of numeric or character columns.  You can decrease the width of a column only if the column contains only null values or if the table has no rows.  You can change the data type only if the column contains null values.  You can convert a CHAR column to the VARCHAR2 data type or convert a VARCHAR2 column to the CHAR data type only if the column contains null values or if you do not change the size.  A change to the default value of a column affects only subsequent insertions to the table.
  • 23. Dropping a Column  Use the DROP COLUMN clause to drop columns you no longer need from the table.  This is a feature available in Oracle8i and later.  The column may or may not contain data.  Using the ALTER TABLE statement, only one column can be dropped at a time.  The table must have at least one column remaining in it after it is altered.  Once a column is dropped, it cannot be recovered.  When a column is dropped from a table, any other columns in that table that are marked with the SET UNUSED option are dropped too.
  • 24. The SET UNUSED Option  You use the SET UNUSED option to mark one or more columns as unused, so that they can be dropped when the demand on system resources is lower.  You use the DROP UNUSED COLUMNS option to remove the columns that are marked as unused.  Unused columns are treated as if they were dropped, even though their column data remains in the table’s rows.  After a column has been marked as unused, you have no access to that column. A SELECT * query will not retrieve data from unused columns.  In addition, the names and types of columns marked unused will not be displayed during a DESCRIBE, and you can add to the table a new column with the same name as an unused column.  SET UNUSED information is stored in the USER_UNUSED_COL_TABS dictionary view.
  • 26. Dropping a Table  Syntax :  All data and structure in the table is deleted.  Any pending transactions are committed.  All indexes are dropped.  Any views and synonyms remain but are invalid.  You cannot roll back the DROP TABLE statement.  As with all DDL statements, DROP TABLE is committed automatically.
  • 27. Changing the Name of an Object - RENAME  To change the name of a table, view, sequence, or synonym, you execute the RENAME statement.  You must be the owner of the object.
  • 28. Truncating a Table The TRUNCATE TABLE statement:  Removes all rows from a table  Releases the storage space used by that table  You cannot roll back row removal when using TRUNCATE.  Alternatively, you can remove rows by using the DELETE statement.  Truncating a table does not fire the delete triggers of the table.  If the table is the parent of a referential integrity constraint, you cannot truncate the table. Disable the constraint before issuing the TRUNCATE statement. 
  • 29. Adding Comments to a Table  You can add comments to a table or column by using the COMMENT statement. Comments can be viewed through the data dictionary views:  ALL_COL_COMMENTS  USER_COL_COMMENTS  ALL_TAB_COMMENTS  USER_TAB_COMMENTS