- 1 - database introduction rrdbms: relational data base management system sql: structured query...
Post on 20-Dec-2015
255 views
TRANSCRIPT
- 1 -
Database Introduction
• RRDBMS: Relational Data Base Management System
• SQL: Structured Query Language
• DBA: Data Base Administrator• DB Designer/Data Modeler
E-commerceWebsite
Query or Reporting
Tools
Database
Database
DBMS DBMSPayrollSystem
ClassEnrollment
program
- 2 -
Multiple (Dual) Perspectives
DATA (Information) Activity(Operation)
EMPLOYEE(Resource)
HIREEMPLOYEE
PAYEMPLOYEE
PROMOTEEMPLOYEE
FIREEMPLOYEE
......
....
......
....
ACMEEnterprise
We do these things
We usethis data
SQL
InsertUpdateDelete Select
CRUD OperationsCreateReadUpdateDelete
UserInterface
Data Process
App.
- 3 -
Database Tables
3
- 4 -
SELECT COURSE.C_ID, COURSE.TITLE, COURSE.FEE
FROM COURSE
WHERE (((COURSE.FEE)>250 And (COURSE.FEE)<=350))
ORDER BY COURSE.FEE DESC;
SQL Select and Query Design in Access
- 5 -
Tables
Query(View)
Form Report
Database Application
Relationships among Access Database Objects
• QUERY in Access can be SELECT, INSERT, UPDATE, or
DELETE. • A saved SELECT query is officially called a View in SQL standard. When
you save a query, you save the definition of the query, not the query result.• You can create a query against a table or a query.• You can create a form or report against a table or a query.
Basic Database Objects
- 6 -
Database:Tables, Columns, Rows, Primary Keys, Foreign Keysand Relationships
Potential relational database for Coca-Cola Bottling Co.
- 7 -
Member Agreementis enrolled under;
applies to
Club
established by; established
Member Order
Product Promotionsponsors;
is sponsored byis featured in;
features
generates; generated by
sells; is sold on
placed by; places
Data Model (Entity Relationship Diagram)
- 8 -
Data Modeling Case StudyThe following is description by a pharmacy owner:
"Jack Smith catches a cold and what he suspects is a flu virus. He makes an appointment with his family doctor who confirm his diagnosis. The doctor prescribes an antibiotic and nasal decongestant tablets. Jack leaves the doctor's office and drives to his local drug store. The pharmacist packages the medication and types the labels for pill bottles. The label includes information about customer, the doctor who prescribe the drug, the drug (e.g., Penicillin), when to take it, and how often, the content of the pill (250 mg), the number of refills, expiration date, and the date of purchase."
Please develop a data model for the entities and relationships within the context of pharmacy. Also develop a definition for "prescription". List all your underlying assumptions used in your data models.
8
- 9 -
Northwind Database
9
- 10 -
A Business Form
10
- 11 -
An Informal Example of Normalization• A CUSTOMER ORDER contains the following information:
– OrderNo– OrderDate– CustNo– CustAddress– CustType– Tax– Total– one or more than one Order-Item which has
• ProductNo• Description• Quantity• UnitPrice• Subtotal.
11
- 12 -
SolutionUnnormalized table
Remove repeating group
1st NF
2nd NF
3rd NF
Remove partial FD
Remove transitive FD
(OrderNo, OrderDate, CustNo, CustAddress, CustType, Tax, TotalTotal)
(OrderNo, ProductNo, Description, Quantity, UnitPrice, SubtotalSubtotal)
(ProductNo, Description, UnitPrice)
(OrderNo, ProductNo, Quantity, UnitPrice, SubtotalSubtotal)
(OrderNo, OrderDate, CustNo, Tax, TotalTotal)(CustNo, CustAddress, CustType)
(OrderNo, OrderDate, CustNo, CustAddress, CustType, Tax, TotalTotal, 1{ProductNo, Description, Quantity, UnitPrice,Subtotal}n)
12
- 13 -
JOIN and Aggregation Function Show students ID, name, and GPA SELECT STUDENT.S_NO, STUDENT.NAME,
Round(Avg(REGISTRATION.GRADE)*100)/100 AS AvgOfGRADEFROM STUDENT INNER JOIN REGISTRATION ON STUDENT.S_NO =
REGISTRATION.S_NOGROUP BY STUDENT.S_NO, STUDENT.NAME;
Or Format(Avg(REGISTRATION.GRADE), "###.00") AS AvgOfGRADE
- 14 -
Database(Access) vs. Spreadsheet (Excel)Features Database Excel
Multi-user concurrent access/update to the data
Volume of the dataComplex relationships of various dataCalculation /formula among various data itemsBusiness graph capabilityApplications development tools
- 15 -
http://www.oracle.com/tools/jdeveloper/documents/jsptwp/index.html?content.html
Auction Web Site's Data Model