Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language...
-
Upload
brittany-andrews -
Category
Documents
-
view
222 -
download
0
Transcript of Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language...
![Page 1: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/1.jpg)
Database Lab
Lecture 1
![Page 2: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/2.jpg)
Database Languages
• Data definition language ( DDL )
– defines data types and the relationships among them
• Data manipulation language ( DML )
– performs tasks such as inserting, updating, or deleting data occurrences
• Query language
– allows searching for information and computing derived information
![Page 3: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/3.jpg)
SQl Statements
Select Data retrieval
INSERT
UPDATE
DELETE
Data manipulation language
(DML)
CREATE
ALTER
DROP
RENAME
TRUNCATE
Data Definition language
(DLL)
COMMIT
ROLLBACK
SAVEPOINT
Transaction Control
![Page 4: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/4.jpg)
Tables in the Oracle Database
1. User Tables:• Are a collection of tables created and maintained by the user • Contain user information
2. Data Dictionary:• Is a collection of tables created and maintained by the Oracle
Server• Contain database information
![Page 5: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/5.jpg)
Create Table
• The simplified syntax for the CREATE TABLE statement is as follows:
CREATE TABLE table_name (
column_name type [DEFAULT default_exp CONSTRAINT constraint_def]
[, column_name type [DEFAULT default_exp CONSTRAINT constraint_def]...]
) ;
![Page 6: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/6.jpg)
Create Table
• table_name specifies the name you assign to the table.
• column_name specifies the name you assign to a column.
• type specifies the type of a column.
• constraint_def specifies the definition of a constraint on a column.
• default_exp specifies the expression used to assign a default value to a column.
![Page 7: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/7.jpg)
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
![Page 8: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/8.jpg)
Data Types
Data typeDescription
VARCHAR2(size)Variable-length character data
CHAR(size)Fixed-length character data
NUMBER(p,s)Variable-length numeric data
DATEDate and time values
BLOBBinary data up to 4 gigabytes
![Page 9: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/9.jpg)
The DEFAULT Option
• Specify a default value for a column during an insert.
• Literal values, expressions, or SQL functions are legal values.
• The default data type must match the column data type.
..…Salary number ( 6,2) default 0..…
![Page 10: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/10.jpg)
Dropping a Table
• All data and structure in the table is deleted.
• You cannot roll back the DROP TABLE statement.
• Syntax:
– Drop Table table_name;
![Page 11: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/11.jpg)
Data Dictionary
• See the names of tables owned by the user.
– SELECT table_name FROM user_tables ;
– SELECT * FROM Tab;
• View tables, views, synonyms, and sequences owned by the user.
– Select * from cat;
![Page 12: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/12.jpg)
What are Constraints?
• Constraints enforce rules at the table level.
• The following constraint types are valid:
– NOT NULL
– UNIQUE
– PRIMARY KEY
– FOREIGN KEY
– CHECK
![Page 13: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/13.jpg)
Constraint Guidelines
• Name a constraint or the Oracle server generates a name by using the SYS_Cn format.
• Create a constraint either:
– At the same time as the table is created, or
– After the table has been created
• Define a constraint at the column or table level.
• View a constraint in the data dictionary.
SELECT * FROM USER_CONSTRAINTS;
![Page 14: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/14.jpg)
Defining Constraints• Column constraint level
• Table constraint level
• In the syntax:• constraint_name is the name of the constraint• constraint_type is the type of the constraint
column [CONSTRAINT constraint_name] constraint_type,
column...,]CONSTRAINT constraint_name [constraint_type
)column,(... ,
![Page 15: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/15.jpg)
The NOT NULL Constraint
• Ensures that null values are not permitted for the column
• The NOT NULL constraint can be specified only at the column level, not at the table level.
• Example :
Salary varchar2(12) CONSTRAINT sal_nn not null,
![Page 16: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/16.jpg)
The UNIQUE Constraint
• A UNIQUE key integrity constraint requires that every value in a column or set of columns (key) be unique.
• UNIQUE constraints allow the input of nulls unless you also define NOT NULL constraints for the same columns
• Defined at either the table level or the column level• Column constraint level - Example
• Table constraint level- Example
Email varchar2(12) CONSTRAINT email_un unique,
……. ,CONSTRAINT email_un unique (email) ,
![Page 17: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/17.jpg)
The PRIMARY KEY Constraint
• The PRIMARY KEY constraint is a column or set of columns that uniquely identifies each row in a table.
• Only one primary key can be created for each table .
• Defined at either the table level or the column level.
• A composite primary key must be created by using the table-level definition.
• Column constraint level - Example
• Table constraint level- Example
Empno varchar2(12) CONSTRAINT Emp_no_pk primary key,
……. ,CONSTRAINT sections_pk primary key (course_no,section_no) ,
![Page 18: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/18.jpg)
The FOREIGN KEY Constraint
• FOREIGN KEY constraints can be defined at the column or table constraint level
• A composite foreign key must be created by using the table-level definition.
• Column constraint level - Example
• Table constraint level- Example
….department_id NUMBER(4) CONSTRAINT emp_deptid_fkREFERENCES departments(department_id), ….
……. ,CONSTRAINT emp_dept_fk FOREIGN KEY (department_id)
REFERENCES departments(department_id)..…… ,
![Page 19: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/19.jpg)
FOREIGN KEY ConstraintKeywords
• FOREIGN KEY: Defines the column in the child table at the table constraint level
• REFERENCES: Identifies the table and column in the parent table
• ON DELETE CASCADE: Deletes the dependent rows in the child table when a row in the parent table is deleted.
• ON DELETE SET NULL: Converts dependent foreign key values to null
![Page 20: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/20.jpg)
Check Constraint
• The CHECK constraint defines a condition that each row must satisfy.
• CHECK constraints can be defined at the column level or table level.
• Column constraint level - Example
• Table constraint level- Example
….salary NUMBER(8,2) CONSTRAINT emp_salary_minCHECK (salary > 0),….
.…CONSTRAINT emp_salary_min
CHECK (salary > 0).…,
![Page 21: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/21.jpg)
Comparison Operators
OperatorMeaning>Greater Than
<Less Than
<=Less Than or equal to
>=Greater Than or equal to
=Equal to
<>Not Equal to
![Page 22: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/22.jpg)
Logical Operators
OperatorMeaningAndReturns TRUE if both component conditions are true
ORReturns TRUE if either component condition is true
NOTReturns TRUE if the following condition is false
![Page 23: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/23.jpg)
Renaming a Table
• You rename a table using the RENAME statement
RENAME old_table_name TO new_table_name;
RENAME EMPLOYESS TO EMP;
![Page 24: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/24.jpg)
Alter Table
• You can use ALTER TABLE to perform tasks such as: – Add, modify, or drop a column – Add or drop a constraint.
• Add Column :
Alter Table TABLE_NAME Add COLUMN_DEFINATION;
Alter Table EMP Add Birth_date Date;
![Page 25: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/25.jpg)
• DROP Column :
Alter Table TABLE_NAME DROP COLUMN COLUMN_NAME;
Alter Table EMP DROP COLUMN Birth_date;
![Page 26: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/26.jpg)
• Modify Column
– You can change a column’s data type, size, and default value.
– Guidelines:
• You can increase the width or precision of a numeric column.
• 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.
![Page 27: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/27.jpg)
• Modify Column
Alter Table TABLE_NAME MODIFY COLUMN_Def;
![Page 28: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/28.jpg)
Adding a Constraint Syntax
• Use the ALTER TABLE statement to:
– Add or drop a constraint, but not modify its structure Enable or disable constraints
– Add a NOT NULL constraint by using the MODIFY clause
ALTER TABLE table_nameADD [CONSTRAINT constraint] constraint_type (columns);
ALTER TABLE table_nameDROP CONSTRAINT constraint_name;
![Page 29: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/29.jpg)
Data Manipulation Language(DML)
• A DML statement is executed when you:
– Add new rows to a table
– Modify existing rows in a table
– Remove existing rows from a table
• A transaction consists of a collection of DML statements that form a logical unit of work.
![Page 30: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/30.jpg)
The INSERT Statement Syntax
• Add new rows to a table by using the INSERT statement.
• Only one row is inserted at a time with this syntax.
INSERT INTO table [(column [, column...])]VALUES (value [, value...]);
![Page 31: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/31.jpg)
Inserting New Rows
• Insert a new row containing values for each column.
• List values in the default order of the columns in the table.
• Optionally, list the columns in the INSERT clause.
• Enclose character and date values within single quotation marks.
• The DD-MON-YY format is usually used to insert a date value.
![Page 32: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/32.jpg)
Inserting Rows with Null Values
• Implicit method:– Omit the column from the column list.
• Explicit method:– Specify the NULL keyword in the VALUES clause.
![Page 33: Database Lab Lecture 1. Database Languages Data definition language ( DDL ) Data definition language –defines data types and the relationships among them.](https://reader036.fdocuments.in/reader036/viewer/2022062803/56649f3d5503460f94c5d184/html5/thumbnails/33.jpg)
Database Transactions
• Begin when the first DML SQL statement is executed• End with one of the following events:
– A COMMIT or ROLLBACK statement is issued.– A DDL or DCL statement executes (automatic commit).– The user exits iSQL*Plus.– The system crashes.