Database design process
|
|
- Myles Matthews
- 5 years ago
- Views:
Transcription
1 Database technology Lecture 2: Relational databases and SQL Jose M. Peña Database design process 1
2 Relational model concepts... Attributes... EMPLOYEE FNAME M LNAME SSN BDATE ADDRESS S SALARY SUPERSSN DNO Tuples... Ramesh K Narayan M Joyce A English F Ahmad V Jabbar M James E Borg M null 1 Relation: Set of tuples, i.e. no duplicates are allowed. Database: Collection of relations. EMPLOYEE ( FNAME, M, LNAME, SSN, BDATE, ADDRESS, S, SALARY, SUPERSSN, DNO) Relation schema 3 Relational model concepts Domain String shorter than 30 chars yyyy-mm-dd Character M or F Integer 400 < x < 8000 EMPLOYEE FNAME M LNAME SSN BDATE ADDRESS S SALARY SUPERSSN DNO Ramesh K Narayan M Joyce Null English F Ahmad V Jabbar M James Null Borg M Null 1 NULL value 4 2
3 Relational model constraints EMPLOYEE FNAME M LNAME SSN BDATE ADDRESS S SALARY SUPERSSN DNO Ramesh K Narayan M Joyce Null English F Ahmad V Jabbar M James Null Borg M Null 1 Entity integrity constraint 5 Relational model constraints Foreign keys EMPLOYEE FNAME M LNAME SSN BDATE ADDRESS S SALARY SUPERSSN DNO Ramesh K Narayan M Joyce A English F Ahmad V Jabbar M James E Borg M Null 1 Referential integrity constraint DEPARTMENT DNAME DNUMBER MGRSSN MGRSTARTDATE Research Administration Headquarters
4 Relational model constraints (Atomic) domain (or NULL). Key. Entity integrity: A PK cannot take NULL values. Referential integrity: A FK in a relation can only refer to the PK of another relation, and the domains of the FK and PK must coincide, and the FK takes NULL value or values that exist for the PK. 7 SQL relational data model SQL relation table attribute column tuple row Used in many DBMSs. Declarative (what data to get, not how). DDL (Data Definition Language) CREATE, ALTER, DROP Queries SELECT DML (Data Manipulation Language) INSERT, DELETE, UPDATE 8 4
5 COMPANY schema EMPLOYEE (FNAME, MINIT, LNAME, SSN, BDATE, ADDRESS, SEX, SALARY, SUPERSSN, DNO) DEPT_LOCATIONS (DNUMBER, DLOCATION) DEPARTMENT (DNAME, DNUMBER, MGRSSN, MGRSTARTDATE) WORKS_ON (ESSN, PNO, HOURS) PROJECT (PNAME, PNUMBER, PLOCATION, DNUM) DEPENDENT (ESSN, DEPENDENT-NAME, SEX, BDATE, RELATIONSHIP) 9 Create tables CREATE TABLE <tablename> ( <colname> <datatype> [<constraint>],, [<constraint>], ); Data types: Integer, decimal, number, varchar,char, etc. Constraints: Not null, primary key, foreign key, unique, etc. 10 5
6 Create tables CREATE TABLE WORKS_ON ( ESSN integer, PNO integer, HOURS decimal(3,1), constraint pk_workson primary key (ESSN, PNO), constraint fk_works_emp FOREIGN KEY (ESSN) references EMPLOYEE(SSN), ); constraint fk_works_proj FOREIGN KEY (PNO) references PROJECT(PNUMBER) 11 Modify tables Change the definition of a table: Add, delete and modify columns and constraints. ALTER TABLE EMPLOYEE ADD JOB VARCHAR(12); ALTER TABLE EMPLOYEE DROP COLUMN ADDRESS CASCADE; ALTER TABLE WORKS_ON DROP FOREIGN KEY fk_works_emp; ALTER TABLE WORKS_ON ADD CONSTRAINT fk_works_emp FOREIGN KEY (ESSN) REFERENCES EMPLOYEE(SSN); Delete a table and its definition DROP TABLE EMPLOYEE; 12 6
7 Query tables SELECT <attribute-list> FROM <table-list> WHERE <condition>; Attribute list: A 1,, A r Attributes whose values are required. Table list: R 1,, R k Relations to be queried Condition: Boolean expression It identifies the tuples that should be retrieved. It may include comparison operators(=, <>, >, >=, etc.) and/or logical operators (and, or, not). 13 Simple query List the SSN for all employees. SELECT SSN FROM EMPLOYEE; SSN
8 Use of * List all information about the employees of department 5. SELECT FNAME, MINIT, LNAME,SSN, BDATE, ADDRESS, SEX, SALARY, SUPERSSN, DNO FROM EMPLOYEE WHERE DNO = 5; or SELECT * FROM EMPLOYEE WHERE DNO = 5; Comparison operators {=, <>, >, =>, etc.} 15 Simple query List the last name, birth date and address for all employees whose name is `Alicia J. Zelaya. SELECT LNAME, BDATE, ADDRESS FROM EMPLOYEE WHERE FNAME = Alicia AND MINIT = J AND LNAME = Zelaya ; Logical operators {and, or, not} LNAME BDATE ADDRESS Zelaya Castle, Spring, TX 16 8
9 Pattern matching List the birth date and address for all employees whose last name contains the substring aya. SELECT BDATE, ADDRESS FROM EMPLOYEE WHERE LNAME LIKE %aya% ; LNAME BDATE ADDRESS LIKE comparison operator % replaces 0 or more characters _ replaces a single character Zelaya Castle, Spring, TX Narayan Fire Oak, Humble, TX 17 Tables as sets List all salaries. SELECT SALARY FROM EMPLOYEE; SALARY
10 Tables as sets SQL considers a table as a multi-set (bag), i.e. tuples can occur more than once in a table. This is different in a relational model. Why? Removing duplicates is expensive. User may want information about duplicates. Aggregation operators. 19 Example List all salaries. SELECT SALARY FROM EMPLOYEE; SALARY List all salaries without duplicates. SELECT DISTINCT SALARY FROM EMPLOYEE; SALARY
11 Set operations Queries can be combined by set operations: UNION, INTERSECT, EXCEPT (MySQL only supports UNION) Retrieve the first names of all people in the database. SELECT FNAME FROM EMPLOYEE E D UNION SELECT DEPENDENT_NAME FROM DEPENDENT; Which department managers have dependents? Show their SSN. SELECT MGRSSN FROM DEPARTMENT INTERSECT SELECT ESSN FROM DEPENDENT; Duplicate tuples are removed. M DE 21 Ambiguous names: Aliasing What if the same attribute name is used in different relations? No alias Whole name Alias SELECT NAME, NAME FROM EMPLOYEE, DEPARTMENT WHERE DNO=DNUMBER; SELECT EMPLOYEE.NAME, DEPARTMENT.NAME FROM EMPLOYEE, DEPARTMENT WHERE EMPLOYEE.DNO=DEPARTMENT.DNUMBER; SELECT E.NAME, D.NAME FROM EMPLOYEE E, DEPARTMENT D WHERE E.DNO=D.DNUMBER; 22 11
12 Join: Cartesian product List all employees and the names of their departments. EMPLOYEE SELECT LNAME, DNAME FROM EMPLOYEE, DEPARTMENT; LNAME Smith Wong Zelaya Wallace Narayan English Jabbar Borg DNO DEPARTMENT DNAME Research Administration headquarters DNUM LNAME DNAME Smith Research Wong Research Zelaya Research Wallace Research Narayan Research English Research Jabbar Research Borg Research Smith Administration Wong Administration Zelaya Administration Wallace Administration Narayan Administration English Administration Jabbar Administration Borg Administration Smith Headquarters Wong Headquarters Zelaya Headquarters Wallace Headquarters Narayan Headquarters English Headquarters Jabbar Headquarters Borg Headquarters 23 Join: Equijoin List all employees and the names of their departments. SELECT LNAME, DNAME FROM EMPLOYEE, DEPARTMENT WHERE DNO = DNUMBER; Thetajoin {=, <>, >, =>, <=,!=} Equijoin Cartesian product Foreign key in EMPLOYEE Primary key in DEPARTMENT LNAME DNO DNAME DNUMBER Smith 5 Research 5 Wong 5 Research 5 Zelaya 4 Research 5 Wallace 4 Research 5 Narayan 5 Research 5 English 5 Research 5 Jabbar 4 Research 5 Borg 1 Research 5 Smith 5 Administration 4 Wong 5 Administration 4 Zelaya 4 Administration 4 Wallace 4 Administration 4 Narayan 5 Administration 4 English 5 Administration 4 Jabbar 4 Administration 4 Borg 1 Administration 4 Smith 5 Headquarters 1 Wong 5 Headquarters 1 Zelaya 4 Headquarters 1 Wallace 4 Headquarters 1 Narayan 5 Headquarters 1 English 5 Headquarters 1 Jabbar 4 Headquarters 1 Borg 1 Headquarters
13 Join: Self-join List the last name for all employees together with the last names of their bosses. SELECT E.LNAME Employee, S. LNAME Boss FROM EMPLOYEE E, EMPLOYEE S WHERE E.SUPERSSN = S.SSN; Employee Boss Smith Wong Wong Borg Zelaya Wallace Wallace Borg Narayan Wong English Wong Jabbar Wallace 25 Join: Inner join List the last name for all employees together with the last names of their bosses. SELECT E.LNAME Employee, S.LNAME Boss FROM EMPLOYEE E, EMPLOYEE S WHERE E.SUPERSSN = S.SSN; SELECT E.LNAME Employee, S.LNAME Boss FROM EMPLOYEE E INNER JOIN EMPLOYEE S ON E.SUPERSSN = S.SSN; 26 13
14 Join: Outer join List the last name for all employees and, if available, show the last names of their bosses. SELECT E.LNAME Employee, S. LNAME Boss FROM EMPLOYEE E LEFT JOIN EMPLOYEE S ON E.SUPERSSN = S.SSN; LEFT JOIN, RIGHT JOIN, FULL JOIN Employee Boss Smith Wong Wong Borg Zelaya Wallace Wallace Borg Narayan Wong English Wong Jabbar Wallace Borg NULL 27 Joins revisited Cartesian product SELECT * FROM a, b; A2 A1 B1 B2 A W B null 100 W C W D null 100 W A X B null 200 X C X D null 200 X A 100 null Y B null null Y C 300 null Y D null null Y A 100 null Z B null null Z C 300 null Z D null null Z A A1 A2 100 A null B 300 C null D B B1 B2 100 W 200 X null null Equijoin, natural join, inner join SELECT * from A, B WHERE A1=B1; A2 A1 B1 B2 A W Thetajoin SELECT * from A, B WHERE A1>B1; A2 A1 B1 B2 C W C X Y Z 28 14
15 Outer joins revisited Right outer join SELECT * FROM A RIGHT JOIN B on A1=B1; A2 A1 B1 B2 A W null null 200 X null null null Y null null null Z Left outer join SELECT * FROM A LEFT JOIN B on A1=B1; A2 A1 B1 B2 A W C 300 null null B null null null D null null null A B A1 A2 B1 B2 100 A 100 W null B 200 X 300 C null Y null D null Z Full outer join (union of right+left) SELECT * FROM A FULL JOIN b on A1=B1; A2 A1 B1 B2 A W null null 200 X null null null Y null null null Z C 300 null null B null null null D null null null 29 Subqueries List all employees that do not have any project assignment with more than 10 hours. SELECT LNAME FROM EMPLOYEE, WORKS_ON WHERE SSN = ESSN AND HOURS <= 10.0; {>, >=, <, <=, <>} + {ANY, SOME, ALL} SELECT LNAME FROM EMPLOYEE WHERE SSN NOT IN (SELECT ESSN FROM WORKS_ON WHERE HOURS > 10.0); Or EXISTS SELECT LNAME FROM EMPLOYEE WHERE NOT EXISTS (SELECT * FROM WORKS_ON WHERE SSN = ESSN AND HOURS > 10.0); 30 15
16 Extended SELECT syntax SELECT <attribute-list and function-list> FROM <table-list> [ WHERE <condition> ] [ GROUP BY <grouping attribute-list>] [ HAVING <group condition> ] [ ORDER BY <attribute-list> ]; 31 Aggregate functions Built-in functions: AVG(), SUM(), MIN(), MAX(), COUNT() They appear only in SELECT and HAVING clauses. NULL values are not considered in the computations. List the total number of employees. SELECT COUNT(*) FROM EMPLOYEE; AVG() Null
17 Grouping Used to apply an aggregate function to subgroups of tuples in a relation. GROUP BY: Grouping attributes. HAVING: Condition that a group has to satisfy. List, for each department with more than two employees, the department number, the number of employees and the average salary. SELECT DNO, COUNT(*), AVG(SALARY) FROM EMPLOYEE GROUP BY DNO HAVING COUNT(*) > 2; DNO COUNT(*) AVG(SALARY) Sort query results Show the department names and their locations in alphabetical order. SELECT DNAME, DLOCATION FROM DEPARTMENT D, DEPT_LOCATIONS DL WHERE D.DNUMBER = DL.DNUMBER ORDER BY DNAME ASC, DLOCATION DESC; DNAME DLOCATION Administration Stafford Headquarters Houston Research Sugarland Research Houston Research Bellaire 34 17
18 Null values List all employees that do not have a boss. SELECT FNAME, LNAME FROM EMPLOYEE WHERE SUPERSSN IS NULL; SUPERSSN = NULL and SUPERSSN <> NULL will not return any matching tuples, because NULL is incomparable to any value, including another NULL. 35 Insert data INSERT INTO <table> (<attr>, ) VALUES ( <val>, ) ; INSERT INTO <table> (<attr>, ) <subquery> ; Store information about how many hours an employee works for the project 1' into WORKS_ON. INSERT INTO WORKS_ON VALUES ( , 1, 32.5); Integrity constraint! Referential integrity constraint! 36 18
19 Update data UPDATE <table> SET <attr> = <val>, WHERE <condition> ; UPDATE <table> SET (<attr>,.) = ( <subquery> ) WHERE <condition> ; Give all employees in the Research department a 10% raise in salary. Integrity constraint! Referential integrity constraint! UPDATE EMPLOYEE SET SALARY = SALARY*1.1 WHERE DNO IN (SELECT DNUMBER FROM DEPARTMENT WHERE DNAME = Research ); 37 Delete data DELETE FROM <table> WHERE <condition> ; Delete the employees having the last name Borg from the EMPLOYEE table. DELETE FROM EMPLOYEE WHERE LNAME = Borg ; Foreign key EMPLOYEE FNAME M LNAME SSN DEPARTMENT DNAME DNUMBER MGRSSN Ramesh K Narayan Research Joyce A English Administration Ahmad V Jabbar Headquarters James E Borg ON DELETE SET NUL / DEFAULT / CASCADE? Referential integrity constraint! 38 19
20 Views A virtual table derived from another (possibly virtual) tables, i.e. always up-to-date. CREATE VIEW dept_view AS SELECT DNO, COUNT(*), AVG(SALARY) FROM EMPLOYEE GROUP BY DNO; Why? Simplify query commands. Provide data security. Enhance programming productivity. Update problems
Database Technology. Topic 3: SQL. Olaf Hartig.
Olaf Hartig olaf.hartig@liu.se Structured Query Language Declarative language (what data to get, not how) Considered one of the major reasons for the commercial success of relational databases Statements
More informationOverview Relational data model
Thanks to José and Vaida for most of the slides. Relational databases and MySQL Juha Takkinen juhta@ida.liu.se Outline 1. Introduction: Relational data model and SQL 2. Creating tables in Mysql 3. Simple
More informationDatabase Technology. Topic 2: Relational Databases and SQL. Olaf Hartig.
Topic 2: Relational Databases and SQL Olaf Hartig olaf.hartig@liu.se Relational Data Model Recall: DB Design Process 3 Relational Model Concepts Relational database: represent data as a collection of relations
More informationAnnouncement5 SQL5. Create%and%drop%table5. Basic%SFW%query5. Reading%a%table5. TDDD37%% Database%technology% SQL5
Announcement %% Database%technology% SQL Fang%Wei9Kleiner fang.wei9kleiner@liu.se hbp://www.ida.liu.se/~ Course%registration:%system%problems%from%registration% office.%be%patient. Registration%for%the%lab:%possible%without%being%
More informationSQL STRUCTURED QUERY LANGUAGE
STRUCTURED QUERY LANGUAGE SQL Structured Query Language 4.1 Introduction Originally, SQL was called SEQUEL (for Structured English QUery Language) and implemented at IBM Research as the interface for an
More informationIntroduction to SQL. ECE 650 Systems Programming & Engineering Duke University, Spring 2018
Introduction to SQL ECE 650 Systems Programming & Engineering Duke University, Spring 2018 SQL Structured Query Language Major reason for commercial success of relational DBs Became a standard for relational
More informationPart 1 on Table Function
CIS611 Lab Assignment 1 SS Chung 1. Write Table Functions 2. Automatic Creation and Maintenance of Database from Web Interface 3. Transforming a SQL Query into an Execution Plan in Relational Algebra for
More informationCIS611 Lab Assignment 1 SS Chung
CIS611 Lab Assignment 1 SS Chung 1. Creating a Relational Database Schema from ER Diagram, Populating the Database and Querying Over the database with SQL 2. Automatic Creation and Maintenance of Database
More informationSession Active Databases (2+3 of 3)
INFO-H-415 - Advanced Databes Session 2+3 - Active Databes (2+3 of 3) Consider the following databe schema: DeptLocation DNumber DLocation Employee FName MInit LName SSN BDate Address Sex Salary SuperSSN
More informationCOSC344 Database Theory and Applications. Lecture 6 SQL Data Manipulation Language (1)
COSC344 Database Theory and Applications Lecture 6 SQL Data Manipulation Language (1) COSC344 Lecture 56 1 Overview Last Lecture SQL - DDL This Lecture SQL - DML INSERT DELETE (simple) UPDATE (simple)
More informationCOSC344 Database Theory and Applications. σ a= c (P) S. Lecture 4 Relational algebra. π A, P X Q. COSC344 Lecture 4 1
COSC344 Database Theory and Applications σ a= c (P) S π A, C (H) P P X Q Lecture 4 Relational algebra COSC344 Lecture 4 1 Overview Last Lecture Relational Model This Lecture ER to Relational mapping Relational
More informationECE 650 Systems Programming & Engineering. Spring 2018
ECE 650 Systems Programming & Engineering Spring 2018 Introduction to SQL Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) Structured Query Language SQL Major reason for commercial
More informationAdvanced Databases. Winter Term 2012/13. Prof. Dr. Dietmar Seipel University of Würzburg. Advanced Databases Winter Term 2012/13
Advanced Databases Winter Term 2012/13 Prof. Dr. Dietmar Seipel University of Würzburg Prof. Dr. Dietmar Seipel Minit FName LName Sex Adress Salary N WORKS_FOR 1 Name Number Locations Name SSN EMPLOYEE
More informationChapter 8 SQL-99: Schema Definition, Basic Constraints, and Queries
Copyright 2004 Pearson Education, Inc. Chapter 8 SQL-99: Schema Definition, Basic Constraints, and Queries Copyright 2004 Pearson Education, Inc. 1 Data Definition, Constraints, and Schema Changes Used
More informationA taxonomy of SQL queries Learning Plan
A taxonomy of SQL queries Learning Plan a. Simple queries: selection, projection, sorting on a simple table i. Small-large number of attributes ii. Distinct output values iii. Renaming attributes iv. Computed
More informationSome different database system architectures. (a) Shared nothing architecture.
Figure.1 Some different database system architectures. (a) Shared nothing architecture. Computer System 1 Computer System CPU DB CPU DB MEMORY MEMORY Switch Computer System n CPU DB MEMORY Figure.1 continued.
More informationSlides by: Ms. Shree Jaswal
Slides by: Ms. Shree Jaswal Overview of SQL, Data Definition Commands, Set operations, aggregate function, null values, Data Manipulation commands, Data Control commands, Views in SQL, Complex Retrieval
More informationSQL. Copyright 2013 Ramez Elmasri and Shamkant B. Navathe
SQL Copyright 2013 Ramez Elmasri and Shamkant B. Navathe Data Definition, Constraints, and Schema Changes Used to CREATE, DROP, and ALTER the descriptions of the tables (relations) of a database Copyright
More informationSQL-99: Schema Definition, Basic Constraints, and Queries. Create, drop, alter Features Added in SQL2 and SQL-99
SQL-99: Schema Definition, Basic Constraints, and Queries Content Data Definition Language Create, drop, alter Features Added in SQL2 and SQL-99 Basic Structure and retrieval queries in SQL Set Operations
More informationChapter 8. Joined Relations. Joined Relations. SQL-99: Schema Definition, Basic Constraints, and Queries
Copyright 2004 Pearson Education, Inc. Chapter 8 SQL-99: Schema Definition, Basic Constraints, and Queries Joined Relations Can specify a "joined relation" in the FROM-clause Looks like any other relation
More informationDatabase Technology. Topic 3: SQL. Structured Query Language. Creating Tables SQL DDL. Creating Tables (Example) Modifying Table Definitions
Structured Query Language eclarative language (what data to get, not how) onsidered one of the major reasons for the commercial success of relational databases Statements for data definitions, queries,
More informationTranslation of ER-diagram into Relational Schema. Dr. Sunnie S. Chung CIS430/530
Translation of ER-diagram into Relational Schema Dr. Sunnie S. Chung CIS430/530 Learning Objectives Define each of the following database terms 9.2 Relation Primary key Foreign key Referential integrity
More informationCOSC344 Database Theory and Applications. Lecture 5 SQL - Data Definition Language. COSC344 Lecture 5 1
COSC344 Database Theory and Applications Lecture 5 SQL - Data Definition Language COSC344 Lecture 5 1 Overview Last Lecture Relational algebra This Lecture Relational algebra (continued) SQL - DDL CREATE
More informationQuery 2: Pnumber Dnum Lname Address Bdate 10 4 Wallace 291 Berry, Bellaire, TX Wallace 291 Berry, Bellaire, TX
5.11 No violation, integrity is retained. Dnum = 2 does not exist. This can be solved by adding a foreign key referencing the department table, so the operation does not execute. Dnum = 4 already exists,
More informationChapter 4. Basic SQL. SQL Data Definition and Data Types. Basic SQL. SQL language SQL. Terminology: CREATE statement
Chapter 4 Basic SQL Basic SQL SQL language Considered one of the major reasons for the commercial success of relational databases SQL Structured Query Language Statements for data definitions, queries,
More informationCOSC Assignment 2
COSC 344 Overview In this assignment, you will turn your miniworld into a set of Oracle tables, normalize your design, and populate your database. Due date for assignment 2 Friday, 25 August 2017 at 4
More informationCopyright 2016 Ramez Elmasri and Shamkant B. Navathe
CHAPTER 7 More SQL: Complex Queries, Triggers, Views, and Schema Modification Slide 7-2 Chapter 7 Outline More Complex SQL Retrieval Queries Specifying Semantic Constraints as Assertions and Actions as
More informationTranslation of ER-diagram into Relational Schema. Dr. Sunnie S. Chung CIS430/530
Translation of ER-diagram into Relational Schema Dr. Sunnie S. Chung CIS430/530 Learning Objectives Define each of the following database terms 9.2 Relation Primary key Foreign key Referential integrity
More informationData Definition Language (DDL)
Islamic University of Gaza Faculty of Engineering Computer Engineering Dept. Database Lab (ECOM 4113) Lab 6 Data Definition Language (DDL) Eng. Mohammed Alokshiya November 11, 2014 Database Keys A key
More informationECE 650 Systems Programming & Engineering. Spring 2018
ECE 650 Systems Programming & Engineering Spring 2018 Relational Databases: Tuples, Tables, Schemas, Relational Algebra Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) Overview
More informationOutline. Textbook Chapter 6. Note 1. CSIE30600/CSIEB0290 Database Systems Basic SQL 2
Outline SQL Data Definition and Data Types Specifying Constraints in SQL Basic Retrieval Queries in SQL INSERT, DELETE, and UPDATE Statements in SQL Additional Features of SQL Textbook Chapter 6 CSIE30600/CSIEB0290
More informationSQL (Structured Query Language) Truong Tuan Anh CSE-HCMUT
SQL (Structured Query Language) Truong Tuan Anh CSE-HCMUT Contents 1 The COMPANY Database 2 SQL developments: an overview 3 DDL: Create, Alter, Drop 4 DML: select, insert, update, delete 5 Triggers The
More informationL130 - DATABASE MANAGEMENT SYSTEMS LAB CYCLE-1 1) Create a table STUDENT with appropriate data types and perform the following queries.
L130 - DATABASE MANAGEMENT SYSTEMS LAB CYCLE-1 1) Create a table STUDENT with appropriate data types and perform the following queries. Roll number, student name, date of birth, branch and year of study.
More informationSQL (Structured Query Language) Truong Tuan Anh CSE-HCMUT
SQL (Structured Query Language) Truong Tuan Anh CSE-HCMUT Contents 1 The COMPANY Database 2 SQL developments: an overview 3 DDL: Create, Alter, Drop 4 DML: select, insert, update, delete 5 Triggers The
More informationIntegrity Coded Relational Databases (ICRDB) - Protecting Data Integrity in Clouds
Integrity Coded Relational Databases (ICRDB) - Protecting Data Integrity in Clouds Jyh-haw Yeh Dept. of Computer Science, Boise State University, Boise, Idaho 83725, USA Abstract 1 Introduction Database-as-a-service
More informationCSIE30600 Database Systems Basic SQL 2. Outline
Outline SQL Data Definition and Data Types Specifying Constraints in SQL Basic Retrieval Queries in SQL INSERT, DELETE, and UPDATE Statements in SQL Additional Features of SQL CSIE30600 Database Systems
More informationSQL Introduction. CS 377: Database Systems
SQL Introduction CS 377: Database Systems Recap: Last Two Weeks Requirement analysis Conceptual design Logical design Physical dependence Requirement specification Conceptual data model (ER Model) Representation
More informationData Manipulation Language (DML)
In the name of Allah Islamic University of Gaza Faculty of Engineering Computer Engineering Department ECOM 4113 DataBase Lab Lab # 3 Data Manipulation Language (DML) El-masry 2013 Objective To be familiar
More informationCopyright 2016 Ramez Elmasri and Shamkant B. Navathe
CHAPTER 6 Basic SQL Slide 6-2 Chapter 6 Outline SQL Data Definition and Data Types Specifying Constraints in SQL Basic Retrieval Queries in SQL INSERT, DELETE, and UPDATE Statements in SQL Additional Features
More informationDr. Anis Koubaa. Advanced Databases SE487. Prince Sultan University
Advanced Databases Prince Sultan University College of Computer and Information Sciences Fall 2013 Chapter 15 Basics of Functional Dependencies and Normalization for Relational Databases Anis Koubaa SE487
More informationQuerying a Relational Database COMPANY database For Lab4, you use the Company database that you built in Lab2 and used for Lab3
CIS30/530 Lab Assignment SS Chung Querying a Relational Database COMPANY database For Lab, you use the Company database that you built in Lab2 and used for Lab3 1. Update the following new changes into
More informationCS 348 Introduction to Database Management Assignment 2
CS 348 Introduction to Database Management Assignment 2 Due: 30 October 2012 9:00AM Returned: 8 November 2012 Appeal deadline: One week after return Lead TA: Jiewen Wu Submission Instructions: By the indicated
More informationChapter 4. Basic SQL. Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley
Chapter 4 Basic SQL Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 4 Outline SQL Data Definition and Data Types Specifying Constraints in SQL Basic Retrieval Queries
More informationCourse Notes on Relational Algebra
Course Notes on Relational Algebra What is the Relational Algebra? Relational Algebra: Summary Operators Selection Projection Union, Intersection, Difference Cartesian Product Join Division Equivalences
More informationPractical Project Report
Practical Project Report May 11, 2017 I. People: II. Roles: Effort in both coding PL/SQL and writing III. Introduction: The topic of my project is DB queries using Oracle PL/SQL. This is my first time
More informationSQL: A COMMERCIAL DATABASE LANGUAGE. Data Change Statements,
SQL: A COMMERCIAL DATABASE LANGUAGE Data Change Statements, Outline 1. Introduction 2. Data Definition, Basic Constraints, and Schema Changes 3. Basic Queries 4. More complex Queries 5. Aggregate Functions
More informationRelational Algebra Part I. CS 377: Database Systems
Relational Algebra Part I CS 377: Database Systems Recap of Last Week ER Model: Design good conceptual models to store information Relational Model: Table representation with structures and constraints
More informationBasic SQL II. Dr Fawaz Alarfaj. ACKNOWLEDGEMENT Slides are adopted from: Elmasri & Navathe, Fundamentals of Database Systems MySQL Documentation
Basic SQL II Dr Fawaz Alarfaj Al Imam Mohammed Ibn Saud Islamic University ACKNOWLEDGEMENT Slides are adopted from: Elmasri & Navathe, Fundamentals of Database Systems MySQL Documentation Lab 1 Review
More informationChapter 8: Relational Algebra
Chapter 8: elational Algebra Outline: Introduction Unary elational Operations. Select Operator (σ) Project Operator (π) ename Operator (ρ) Assignment Operator ( ) Binary elational Operations. Set Operators
More informationStructured Query Language (SQL)
Structured Query Language (SQL) SQL Chapters 6 & 7 (7 th edition) Chapters 4 & 5 (6 th edition) PostgreSQL on acsmysql1.acs.uwinnipeg.ca Each student has a userid and initial password acs!
More informationDEPARTMENT DNAME DNUMBER MGRNAME MGRSTARTDATE
Figure D.1 A hierarchical schema. DEPARTMENT DNAME DNUMBER MGRNAME MGRSTARTDATE NAME SSN BDATE ADDRESS PNAME PNUMBER PLOCATION Figure D.2 Occurrences of Parent-Child Relationships. (a) Two occurrences
More informationRelational Calculus: 1
CSC 742 Database Management Systems Topic #8: Relational Calculus Spring 2002 CSC 742: DBMS by Dr. Peng Ning 1 Relational Calculus: 1 Can define the information to be retrieved not any specific series
More informationRef1 for STUDENT RECORD DB: Ref2 for COMPANY DB:
Lect#5: SQL Ref1 for STUDENT RECORD DB: Database Design and Implementation Edward Sciore, Boston College ISBN: 978-0-471-75716-0 Ref2 for COMPANY DB: Fund. of Database Systems, Elmasri, Navathe, 5th ed.,
More informationChapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification
Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Chapter 5 Outline More Complex SQL Retrieval
More informationBasic SQL. Dr Fawaz Alarfaj. ACKNOWLEDGEMENT Slides are adopted from: Elmasri & Navathe, Fundamentals of Database Systems MySQL Documentation
Basic SQL Dr Fawaz Alarfaj Al Imam Mohammed Ibn Saud Islamic University ACKNOWLEDGEMENT Slides are adopted from: Elmasri & Navathe, Fundamentals of Database Systems MySQL Documentation MIDTERM EXAM 2 Basic
More informationMore SQL: Complex Queries, Triggers, Views, and Schema Modification
Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 Outline More Complex SQL Retrieval Queries
More informationDATABASE CONCEPTS. Dr. Awad Khalil Computer Science & Engineering Department AUC
DATABASE CONCEPTS Dr. Awad Khalil Computer Science & Engineering Department AUC s are considered as major components in almost all recent computer application systems, including business, management, engineering,
More informationSQL: Advanced Queries, Assertions, Triggers, and Views. Copyright 2012 Ramez Elmasri and Shamkant B. Navathe
SQL: Advanced Queries, Assertions, Triggers, and Views Copyright 2012 Ramez Elmasri and Shamkant B. Navathe NULLS IN SQL QUERIES SQL allows queries that check if a value is NULL (missing or undefined or
More informationMore SQL: Complex Queries, Triggers, Views, and Schema Modification
Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 Outline More Complex SQL Retrieval Queries
More informationCS 338 Basic SQL Part II
CS 338 Basic SQL Part II Bojana Bislimovska Spring 2017 Major research Outline Basic Retrieval Queries Exercises Ambiguous Attribute Names Major research Same name can be used for two or more attributes
More informationDBMS LAB SESSION PAVANKUMAR MP
DBMS LAB SESSION Pavan Kumar M.P B.E,M.Sc(Tech) by Research,(Ph.D) Assistant Professor Dept of ISE J.N.N.College Of Engineering Shimoga http://pavankumarjnnce.blogspot.in Consider the schema for Company
More informationMore SQL: Complex Queries, Triggers, Views, and Schema Modification
Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 Outline More Complex SQL Retrieval Queries
More informationIn Chapters 3 through 6, we presented various aspects
15 chapter Basics of Functional Dependencies and Normalization for Relational Databases In Chapters 3 through 6, we presented various aspects of the relational model and the languages associated with it.
More informationCSC 742 Database Management Systems
CSC 742 Database Management Systems Topic #16: Query Optimization Spring 2002 CSC 742: DBMS by Dr. Peng Ning 1 Agenda Typical steps of query processing Two main techniques for query optimization Heuristics
More informationChapter 3. Algorithms for Query Processing and Optimization
Chapter 3 Algorithms for Query Processing and Optimization Chapter Outline 1. Introduction to Query Processing 2. Translating SQL Queries into Relational Algebra 3. Algorithms for External Sorting 4. Algorithms
More informationRELATIONAL DATA MODEL
RELATIONAL DATA MODEL 3.1 Introduction The relational model of data was introduced by Codd (1970). It is based on a simple and uniform data structure - the relation - and has a solid theoretical and mathematical
More informationRelational Algebra 1
Relational Algebra 1 Motivation The relational data model provides a means of defining the database structure and constraints NAME SALARY ADDRESS DEPT Smith 50k St. Lucia Printing Dilbert 40k Taringa Printing
More informationAlgorithms for Query Processing and Optimization. 0. Introduction to Query Processing (1)
Chapter 19 Algorithms for Query Processing and Optimization 0. Introduction to Query Processing (1) Query optimization: The process of choosing a suitable execution strategy for processing a query. Two
More informationChapter 6: RELATIONAL DATA MODEL AND RELATIONAL ALGEBRA
Chapter 6: Relational Data Model and Relational Algebra 1 Chapter 6: RELATIONAL DATA MODEL AND RELATIONAL ALGEBRA RELATIONAL MODEL CONCEPTS The relational model represents the database as a collection
More informationHand in: the database picture (png or jpeg or ) for question 2, the queries (as SQL statements) for question 4
Using PostgreSQL, USDA database: 1. Create the version of the USDA database that follows on subsequent pages. Note this has been taken from a site that lists this database as a PostgreSQL sample database.
More informationGuides for Installing MS SQL Server and Creating Your First Database. Please see more guidelines on installing procedure on the class webpage
Guides for Installing MS SQL Server and Creating Your First Database Installing process Please see more guidelines on installing procedure on the class webpage 1. Make sure that you install a server with
More informationThe Relational Data Model and Relational Database Constraints
The Relational Data Model and Relational Database Constraints First introduced by Ted Codd from IBM Research in 1970, seminal paper, which introduced the Relational Model of Data representation. It is
More informationCOSC 304 Introduction to Database Systems SQL DDL. Dr. Ramon Lawrence University of British Columbia Okanagan
COSC 304 Introduction to Database Systems SQL DDL Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca SQL Overview Structured Query Language or SQL is the standard query language
More informationCS5300 Database Systems
CS5300 Database Systems Views A.R. Hurson 323 CS Building hurson@mst.edu Note, this unit will be covered in two lectures. In case you finish it earlier, then you have the following options: 1) Take the
More informationRelational Algebra & Calculus. CS 377: Database Systems
Relational Algebra & Calculus CS 377: Database Systems Quiz #1 Question: What is metadata and why is it important? Answer: Metadata is information about the data such as name, type, size. It is important
More informationNESTED QUERIES AND AGGREGATION CHAPTER 5 (6/E) CHAPTER 8 (5/E)
1 NESTED QUERIES AND AGGREGATION CHAPTER 5 (6/E) CHAPTER 8 (5/E) 2 LECTURE OUTLINE More Complex SQL Retrieval Queries Self-Joins Renaming Attributes and Results Grouping, Aggregation, and Group Filtering
More informationAdvanced Databases (SE487) Prince Sultan University College of Computer and Information Sciences
Advanced Databases (SE487) Prince Sultan University College of Computer and Information Sciences ER to Relational Mapping Anis Koubaa Chapter 9 Outline } Relational Database Design Using ER-to-Relational
More informationChapter 19 Query Optimization
Chapter 19 Query Optimization It is an activity conducted by the query optimizer to select the best available strategy for executing the query. 1. Query Trees and Heuristics for Query Optimization - Apply
More informationNESTED QUERIES AND AGGREGATION CHAPTER 5 (6/E) CHAPTER 8 (5/E)
1 NESTED QUERIES AND AGGREGATION CHAPTER 5 (6/E) CHAPTER 8 (5/E) 2 LECTURE OUTLINE More Complex SQL Retrieval Queries Self-Joins Renaming Attributes and Results Grouping, Aggregation, and Group Filtering
More informationRelational Model. CS 377: Database Systems
Relational Model CS 377: Database Systems ER Model: Recap Recap: Conceptual Models A high-level description of the database Sufficiently precise that technical people can understand it But, not so precise
More informationBasic SQL. Basic SQL. Basic SQL
Basic SQL Dr Fawaz Alarfaj Al Imam Mohammed Ibn Saud Islamic University ACKNOWLEDGEMENT Slides are adopted from: Elmasri & Navathe, Fundamentals of Database Systems MySQL Documentation Basic SQL Structured
More informationINDEX. 1 Basic SQL Statements. 2 Restricting and Sorting Data. 3 Single Row Functions. 4 Displaying data from multiple tables
INDEX Exercise No Title 1 Basic SQL Statements 2 Restricting and Sorting Data 3 Single Row Functions 4 Displaying data from multiple tables 5 Creating and Managing Tables 6 Including Constraints 7 Manipulating
More informationDatabase Management System (15ECSC208) UNIT I: Chapter 2: Relational Data Model and Relational Algebra
Database Management System (15ECSC208) UNIT I: Chapter 2: Relational Data Model and Relational Algebra Relational Data Model and Relational Constraints Part 1 A simplified diagram to illustrate the main
More informationSQL- Updates, Asser0ons and Views
SQL- Updates, Asser0ons and Views Data Defini0on, Constraints, and Schema Changes Used to CREATE, DROP, and ALTER the descrip0ons of the tables (rela0ons) of a database CREATE TABLE In SQL2, can use the
More informationChapter 6 The Relational Algebra and Calculus
Chapter 6 The Relational Algebra and Calculus 1 Chapter Outline Example Database Application (COMPANY) Relational Algebra Unary Relational Operations Relational Algebra Operations From Set Theory Binary
More informationChapter 8: The Relational Algebra and The Relational Calculus
Ramez Elmasri, Shamkant B. Navathe(2017) Fundamentals of Database Systems (7th Edition),pearson, isbn 10: 0-13-397077-9;isbn-13:978-0-13-397077-7. Chapter 8: The Relational Algebra and The Relational Calculus
More informationThis chapter discusses how to design a relational
9 chapter Relational Database Design by ER- and EER-to-Relational Mapping This chapter discusses how to design a relational database schema based on a conceptual schema design. Figure 7.1 presented a high-level
More informationPES Institute of Technology Bangalore South Campus (1 K.M before Electronic City,Bangalore ) Department of MCA. Solution Set - Test-II
PES Institute of Technology Bangalore South Campus (1 K.M before Electronic City,Bangalore 560100 ) Solution Set - Test-II Sub: Database Management Systems 16MCA23 Date: 04/04/2017 Sem & Section:II Duration:
More informationUNIVERSITY OF TORONTO MIDTERM TEST SUMMER 2017 CSC343H Introduction to Databases Instructor Tamanna Chhabra Duration 120 min No aids allowed
UNIVERSITY OF TORONTO MIDTERM TEST SUMMER 2017 CSC343H Introduction to Databases Instructor Tamanna Chhabra Duration 120 min No aids allowed This test is worth 15% of your final mark. Please answer all
More informationWentworth Institute of Technology COMP570 Database Applications Fall 2014 Derbinsky. Physical Tuning. Lecture 10. Physical Tuning
Lecture 10 1 Context Influential Factors Knobs Denormalization Database Design Query Design Outline 2 Database Design and Implementation Process 3 Factors that Influence Attributes: Queries and Transactions
More informationChapter 18 Strategies for Query Processing. We focus this discussion w.r.t RDBMS, however, they are applicable to OODBS.
Chapter 18 Strategies for Query Processing We focus this discussion w.r.t RDBMS, however, they are applicable to OODBS. 1 1. Translating SQL Queries into Relational Algebra and Other Operators - SQL is
More informationCourse Notes on From Entity-Relationship Schemas to Relational Schemas
Course Notes on From Entity-Relationship Schemas to Relational Schemas The chapter deals with practical database design: the construction of a relational schema from an E-R schema this stage of database
More informationThe Relational Algebra and Calculus. Copyright 2013 Ramez Elmasri and Shamkant B. Navathe
The Relational Algebra and Calculus Copyright 2013 Ramez Elmasri and Shamkant B. Navathe Chapter Outline Relational Algebra Unary Relational Operations Relational Algebra Operations From Set Theory Binary
More informationSQL Queries. COSC 304 Introduction to Database Systems SQL. Example Relations. SQL and Relational Algebra. Example Relation Instances
COSC 304 Introduction to Database Systems SQL Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca SQL Queries Querying with SQL is performed using a SELECT statement. The general
More informationSQL: A COMMERCIAL DATABASE LANGUAGE. Complex Constraints
SQL: A COMMERCIAL DATABASE LANGUAGE Complex Constraints Outline 1. Introduction 2. Data Definition, Basic Constraints, and Schema Changes 3. Basic Queries 4. More complex Queries 5. Aggregate Functions
More informationIntroduction to Query Processing and Query Optimization Techniques. Copyright 2011 Ramez Elmasri and Shamkant Navathe
Introduction to Query Processing and Query Optimization Techniques Outline Translating SQL Queries into Relational Algebra Algorithms for External Sorting Algorithms for SELECT and JOIN Operations Algorithms
More informationIntroduction. Sample Database SQL-92. Sample Data. Sample Data. Chapter 6 Introduction to Structured Query Language (SQL)
Chapter 6 Introduction to Structured Query Language (SQL) Introduction Structured Query Language (SQL) is a data sublanguage that has constructs for defining and processing a database It can be Used stand-alone
More informationCOSC 304 Introduction to Database Systems SQL. Dr. Ramon Lawrence University of British Columbia Okanagan
COSC 304 Introduction to Database Systems SQL Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca SQL Queries Querying with SQL is performed using a SELECT statement. The general
More informationKey Points. COSC 122 Computer Fluency. Databases. What is a database? Databases in the Real-World DBMS. Database System Approach
COSC 122 Computer Fluency Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Key Points 1) allow for easy storage and retrieval of large amounts of information. 2) Relational
More informationHomework #4 1. Suppose that each of the following Update operations is applied directly to the database state shown in Figure 5.6.
Homework #4 1. Suppose that each of the following Update operations is applied directly to the database state shown in Figure 5.6. Discuss all integrity constraints violated by each operation, if any,
More information