Lesson 10 - DDL
Lesson 10 - DDL
• Database objects
– Naming rules
• CREATE TABLE statement:
– Access another user’s tables
– DEFAULT option
• Data types
• Overview of constraints: NOT NULL, PRIMARY KEY,
FOREIGN KEY, CHECK constraints
• Creating a table using a subquery
• ALTER TABLE
– Read-only tables
• DROP TABLE statement
Object Description
Table Basic unit of storage; composed of rows
View Logically represents subsets of data from one or
more tables
Sequence Generates numeric values
Index Improves the performance of some queries
• Database objects
– Naming rules
• CREATE TABLE statement:
– Access another user’s tables
– DEFAULT option
• Data types
• Overview of constraints: NOT NULL, PRIMARY KEY,
FOREIGN KEY, CHECK constraints
• Creating a table using a subquery
• ALTER TABLE
– Read-only tables
• DROP TABLE statement
• You specify:
– Table name
– Column name, column data type, and column size
USERA USERB
SELECT * SELECT *
FROM userB.employees; FROM userA.employees;
• Database objects
– Naming rules
• CREATE TABLE statement:
– Access another user’s tables
– DEFAULT option
• Data types
• Overview of constraints: NOT NULL, PRIMARY KEY,
FOREIGN KEY, CHECK constraints
• Creating a table using a subquery
• ALTER TABLE
– Read-only tables
• DROP TABLE statement
• Database objects
– Naming rules
• CREATE TABLE statement:
– Access another user’s tables
– DEFAULT option
• Data types
• Overview of constraints: NOT NULL, PRIMARY KEY,
FOREIGN KEY, CHECK constraints
• Creating a table using a subquery
• ALTER TABLE
– Read-only tables
• DROP TABLE statement
• Syntax:
CREATE TABLE [schema.]table
(column datatype [DEFAULT expr]
[column_constraint],
...
[table_constraint][,...]);
Ensures that null values are not permitted for the column:
…
NOT NULL constraint Absence of NOT NULL
(Primary Key enforces NOT NULL constraint (Any row can
NOT NULL constraint.) constraint contain a null value for
this column.)
UNIQUE constraint
EMPLOYEES
…
INSERT INTO
Allowed
Not allowed:
already exists
Not allowed
(50 already exists)
…
EMPLOYEES
FOREIGN
KEY
…
INSERT INTO Not allowed
(9 does not
exist)
Allowed
UPDATE employees
SET department_id = 55
WHERE department_id = 110;
• Database objects
– Naming rules
• CREATE TABLE statement:
– Access another user’s tables
– DEFAULT option
• Data types
• Overview of constraints: NOT NULL, PRIMARY KEY,
FOREIGN KEY, CHECK constraints
• Creating a table using a subquery
• ALTER TABLE
– Read-only tables
• DROP TABLE statement
DESCRIBE dept80
• Database objects
– Naming rules
• CREATE TABLE statement:
– Access another user’s tables
– DEFAULT option
• Data types
• Overview of constraints: NOT NULL, PRIMARY KEY,
FOREIGN KEY, CHECK constraints
• Creating a table using a subquery
• ALTER TABLE
– Read-only tables
• DROP TABLE statement
Use the ALTER TABLE syntax to put a table into the read-only
mode:
• Prevents DDL or DML changes during table maintenance
• Change it back into read/write mode
• Database objects
– Naming rules
• CREATE TABLE statement:
– Access another user’s tables
– DEFAULT option
• Data types
• Overview of constraints: NOT NULL, PRIMARY KEY,
FOREIGN KEY, CHECK constraints
• Creating a table using a subquery
• ALTER TABLE
– Read-only tables
• DROP TABLE statement
In this lesson, you should have learned how to use the CREATE
TABLE statement to create a table and include constraints:
• Categorize the main database objects
• Review the table structure
• List the data types that are available for columns
• Create a simple table
• Explain how constraints are created at the time of table
creation
• Describe how schema objects work