SlidePub
Home
Categories
Login
Register
Home
Technology
SQL commands in database management system
SQL commands in database management system
pmselvaraj
7 views
26 slides
Oct 18, 2024
Slide
1
of 26
Previous
Next
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
About This Presentation
structured querry language in database management system
Size:
401.08 KB
Language:
en
Added:
Oct 18, 2024
Slides:
26 pages
Slide Content
Slide 1
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe
Schema Definition, Constraints, and
Queries and Views
Slide 2
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 2
Introduction to SQL
A standard language used in most DBMS.
Well, not as standardized as one might hope
it keeps involving and growing
Vendors have the tendency to add “unique” features.
Pronounced as “S-Q-L” or “Sequel.”
Both as a DDL and DML language.
DDL (Data Definition Language): define the schema of
the database.
DML (Data Manipulation Language): provides
commands to manipulate the database (query, insert,
update, delete).
Slide 3
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 3
SQL Continued
Based on relational algebra, but not entirely identical.
Relations Tables
Tuples Rows
Attributes Columns
Unlike a relation, a table is not a set. Duplicates are
not automatically removed.
This is for practical reasons. Duplicate eliminations are
inefficient in implementation.
Like a relation, the order of rows in a table is
irrelevant.
Slide 4
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 4
Basic DDL Commands in SQL
CREATE: to define new tables (to define relation
schemas)
DROP: to delete table definitions (to delete relation
schemas)
ALTER: to change the definitions of existing tables
(to change relation schema)
Other features as DDL
Specify referential integrity constraints (FKs)
Specify user-defined attributes constraints
Slide 5
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 5
Basic DML Commands in SQL
INSERT: to add new rows to table
UPDATE: to change the “state” (the value) of rows.
DELETE: to remove rows
SELECT: a query command that uses relation algebra
like expressions
Various options available to handle the
enforcement/violation of integrity constraints
Slide 6
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 6
SQL Commands Are Sequential
Commands are executed in the order they are
encountered.
DDL commands are not like C/Java declarations.
DDL and DML commands can be mixed
For example, you can define a table, fill it up with
contents, and delete a columns.
That is, table definitions (relation schema) can be
changed during the lifespan of a database.
The ability of doing so does imply it is a good practice.
It is best the schema/design of a database is well thought
through before its use.
Slide 7
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 7
Platforms of This Course
Platform 1: MySQL
Open source, free software
Available on Windows and Linux.
Easily installed on your own PC.
Platform 2: Oracle 10g Enterprise Edition
Available thru IT&E labs
Proprietary, popular DBMS
Please see http://labs.ite.gmu.edu/reference/faq_oracle.htm for
details.
I’ll be using MySQL as the reference platform.
You can submit projects on either platform.
Slide 8
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 8
MySQL
Open source and free
Generally not as powerful as Oracle
Our projects will not need advanced and/or proprietary
features of Oracle.
Still, it is an industrial strength package.
Users include Amazon, NASA, Google, Yahoo …
A commercial edition is also available (MySQL
Enterprise) --- You are paying for the services.
Slide 9
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 9
Installation on Windows
Download the Essential Version of MySQL 5.0 from mysql.com
Click on the .exe file to start installation.
In Setup Type, Choose “Complete”
Slide 10
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 10
Use Standard Configuration
Slide 11
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 11
Install As Windows Service
Slide 12
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 12
Set Root Password
Slide 13
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 13
Launch MySQL
Use the Start menu to launch the
“MySQL Command Line Client”
Enter the root password
Slide 14
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 14
The
COMPANY
Database
Slide 15
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 15
Create the COMPANY Database
To create
create datatbase COMPANY;
To use (or switch to) the database
use COMPANY;
Subsequent commands will operate on the COMPANY
database by default.
Slide 16
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 16
CREATE TABLE
CREATE TABLE DEPARTMENT (
Dname VARCHAR(10) NOT NULL,
Dnumber INTEGER Default 0,
Mgr_ssn CHAR(9),
Mgr_Sartdate CHAR(9),
PRIMARY KEY (Dnumber),
UNIQUE (Dname),
FOREIGN KEY (Mgr_ssn)
REFERENCES EMPLOYEE (Ssn));
The “UNIQUE” clause specifies secondary keys.
EMPLOYE)has to be created first for the FK Mgr_ssn to
refer to it.
How could we have defined the Dno FK in EMPLOYEE?
Slide 17
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 17
Additional Data Types
DATE:
Made up of year-month-day in the format yyyy-mm-dd
TIME:
Made up of hour:minute:second in the format hh:mm:ss
TIMESTAMP:
Has both DATE and TIME components
Decimal (i,j):
i: total number of digits
j: the number of digits after the decimal point
Others: Boolean, Float, Double Precision
See user’s manual for more data types.
Slide 18
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 18
Adding the Dno FK to EMPLOYEE
If “create table EMPLOYEE ” is issued first, we
cannot specify Dno as a FK in that create command.
An ALTER command must be used to change the schema
of EMPLOYEE, after the “create table
DEPARTMENT,” to add a FK.
alter table EMPLOYEE
add constraint
foreign key (Dno)
references DEPARTMENT
(Dnumber);
Slide 19
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 19
The Check Clause
Used to specify user-defined constraints
Assume that dept. numbers are from 0 to 99.
create table DEPARTMENT (
…
Dnumber INTEGER Default 0
check (Dnumber>=0 AND Dumber<=99),
…);
“Check” can also be a clause of the entire table.
create table DEPARTMENT (
…
Dept_create_date date,
Mgr_start_date date,
check (Dept_create_date <= Mgr_start_date)
);
Slide 20
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 20
Exercise
Create the table WORKS_ON, assuming tables
EMPLOYEE and PROJECT have been created and
Hours ranges from 1 to 56.
Slide 21
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 21
Add Columns to Existing Tables
To add spouse SSN (S_ssn) to EMPLOYEE
alter table EMPLOYEE add column S_ssn char(9);
The new attribute will have NULLs in all the tuples of the
relation right after the command is executed
Alternatively, we can set a default value.
alter table EMPLOYEE add column S_ssn char(9)
default “000000000”;
Slide 22
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 22
Delete Columns from Existing Tables
To delete column S_ssn
alter table EMPLOYEE drop column S_ssn;
Reminder: changing relation schemas typically
indicates ill-executed design phase of the database.
Slide 23
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 23
Referential Integrity Options
Causes of referential integrity violation for a foreign
key FK (consider the Mgr_ssn of DEPARTMENT).
On Delete: when deleting the foreign tuple
What to do when deleting the manager tuple in
EMPLOYEE ?
On Update: when updating the foreign tuple
What to do when updating/changing the SSN of the
manager tuple in EMPLOYEE is changed ?
Actions when the above two causes occur.
Set Null: the Mgr_ssn is set to null.
Set Default: the Mgr_ssn is set to the default value.
Cascade: the Mgr_ssn is updated accordingly
If the manager is deleted, the department is also deleted.
Slide 24
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 24
The Mgr_ssn Example
CREATE TABLE DEPARTMENT (
…
Mgr_ssn CHAR(9),
…
FOREIGN KEY (Mgr_ssn)
REFERENCES EMPLOYEE (Ssn)
ON DELETE ???
ON UPDATE ???
);
Slide 25
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 25
Another Example
Create table EMP(
…
ESSN CHAR(9),
DNO INTEGER DEFAULT 1,
SUPERSSNCHAR(9),
PRIMARY KEY (ESSN),
FOREIGN KEY (DNO) REFERENCES DEPT
ON DELETE SET DEFAULT
ON UPDATE CASCADE,
FOREIGN KEY (SUPERSSN) REFERENCES EMP
ON DELETE SET NULL
ON UPDATE CASCADE);
Slide 26
Copyright © 2007 Ramez Elmasri and Shamkant B. Navathe Slide 26
Miscellaneous Commands
show databases;
Show all the databases on the server
show tables;
Show all the tables of the present database
show columns from table EMPLOYEE;
drop table t_name;
Delete the entire table t_name
drop database db_name;
Delete the entire database db_name
load data infile f_name into table t_name;
To be discussed with the next homework.
Tags
Categories
Technology
Download
Download Slideshow
Get the original presentation file
Quick Actions
Embed
Share
Save
Print
Full
Report
Statistics
Views
7
Slides
26
Age
411 days
Related Slideshows
11
8-top-ai-courses-for-customer-support-representatives-in-2025.pptx
JeroenErne2
48 views
10
7-essential-ai-courses-for-call-center-supervisors-in-2025.pptx
JeroenErne2
47 views
13
25-essential-ai-courses-for-user-support-specialists-in-2025.pptx
JeroenErne2
37 views
11
8-essential-ai-courses-for-insurance-customer-service-representatives-in-2025.pptx
JeroenErne2
34 views
21
Know for Certain
DaveSinNM
22 views
17
PPT OPD LES 3ertt4t4tqqqe23e3e3rq2qq232.pptx
novasedanayoga46
26 views
View More in This Category
Embed Slideshow
Dimensions
Width (px)
Height (px)
Start Page
Which slide to start from (1-26)
Options
Auto-play slides
Show controls
Embed Code
Copy Code
Share Slideshow
Share on Social Media
Share on Facebook
Share on Twitter
Share on LinkedIn
Share via Email
Or copy link
Copy
Report Content
Reason for reporting
*
Select a reason...
Inappropriate content
Copyright violation
Spam or misleading
Offensive or hateful
Privacy violation
Other
Slide number
Leave blank if it applies to the entire slideshow
Additional details
*
Help us understand the problem better