CS181 Introduction to Database and the WebClass hour: 9:55AM-10:45AM MWF.Hyer Hall 210
Course Objectives
• Create databases, tables, queries, forms and write reports using RDBMS
• Develop and publish web sites using HTML, and CSS.
Textbook/Technology requirement
Textbook:1. HTML for the World Wide Web with XHTML and CSS. Elizabeth Castro. 2003. Peachpit Press.2. Special Edition Using Microsoft Access 2002. Roger Jennings. 2002. Que Press.
Software:Microsoft Access
Introduction
Tell me about yourself and what you expect to get out from this course
Self-Introduction• Recently graduated from the
University of Connecticut (05 Class), Ph.D in Computer Science and Engineering
• Bachelor of Science from Hanoi University of Technology (86-91)
• Master of Computer Science from UW-Milwaukee (96-99)
Self-Introduction
• Research Experience:– User Modeling, Information Retrieval,
Decision Theory, Collaborative Filtering, Human Factors
• Teaching Experience:– CS181, 271, 172 Fall 05 at UWW– Introduction courses at UOP and Devry– TA for Computer Architecture, OO Design,
Compiler, Artificial Intelligence
Self-Introduction
• Teaching philosophy:– Interactive– Adaptive– Pro-active– Collaborative
• Other hobbies (non-academic related)– Movies– College Basketball– Family activities
Contact information
Baker Hall 324
Office Hours: 2:15-4:15pm, MWF or by appointment
262 472 5170
Course detail - Topics
Develop simple three tier application
Database (back-end)
HTML & Java script(front-end)
Connecting these two together
Course detail - Evaluation
GRADABLE POINTS WEIGHTING
Project 1 300 30%
Project 2 200 20%
Midterm 200 20%
Final exam 300 30%
Totals 1000 100%
What does it take to success
• Hard working, well-organization, pay attention to detail
• Participate in the class discussion
• Practice, practice, practice!!!
Questions?
Introduction to Database and Database Design
Introduction to Database
• Why are databases important?
• How do databases represent information?
• Who works with databases?
• How do databases support the World Wide Web?
• What database concepts and terms do you need to know?
Why Are Databases Important?
• Importance to business– Walmart: Records of retail business
• Size of warehouses• Size of inventory• Average sales per $ of inventory
– Amazon.com: Records of customers
• Importance to Web– Records of interactions/transactions– Example of auction site, customers’s
preferences/behaviors
Importance of Databases to Economy
• Expanding use of databases in retail sales– Walmart, retail sales information tracking
• Examples of analyses– Sales of items
• Comparisons between daily totals of items sold and items in inventory; seasonal variations in sales of specific and similar items; relative sales of similar items with different features
– Market-basket collections (all items in a single purchase)• Average and variation in total purchase amount/number & price
of items.• Correlation between sales of items in a single purchase
– Customer analysis• Behavior of average customer• Preferences of individual customers
How Do Databases Represent Information?
• The physical database:– a collection of files containing the data content
• The schema: – a specification of the physical database’s information content
and logical structure
• The database engine: – software that lets people access and modify the database
contents
• The data definition and manipulation languages: – programming languages, such as Java or SQL (Structured
Query Language), that let software developers define the schema and access the database
How Do Databases Represent Information?
• Relational database management system (RDBMS)– Tables of data– Schema
• Name of table• Names and types of attributes
– Contents• Row is a fact• Attribute value is a characteristic
Example of storing information of a department
Department table
Dept Manager Description
101 017-11-0031
Marketing
102 018-21-2131
Accounting
103 019-41-1231
Customer service
Schema Depts(dept,manager,description)
Table creation statement
create table depts(dept char(3), manager char(11), description char(25))
Example of storing information of a department
Insert data into table
insert into depts (dept, manager,description)
values ('001','017-11-0031',‘marketing');
Practice
• Open Microsoft Access
• Name your database as Example
• Create a new table “By Design View” named Department with 2 fields:– Dept: text (3 characters)- Manager: text (11 characters)- Description: text (100 characters)
Who Works with Database Systems?
• Database designers
• Applications developers
• Web-application developers
• Web-site designers
• Database administrators
How Do Databases Support the World Wide Web?
• Maintain information that is published in the site• Track the ways in which site visitors use that
information• Track the number of site visitors and customers• Store information collected from input forms
such as requests for customer addresses• Store the structure and content of Web pages
Information Systems
• Three separate types of functionality:– Data Management– Application logic– Presentation
Single-tier architecture
• All functionality combined into a single tier (e.g mainframe where users access through dumb terminal or stand-alone machine where there is no server)
• Pros: easy maintenance and administration
• Cons: missing GUI, single point failure
Client-server architecture
• Thin client– Client implements only the GUI– Server implements business logic
and data management
• Pros: easy maintenance and implementation
• Cons:can’t separate between business logic and data management
Client-server architecture
• Thick client– Client implements both GUI and
business logic– Server implements data
management
• Cons: no central place to update the business logic– Security: trust clients– Scalability: problems with 100s of
clients
Three tier architecture
Presentationtier
Middle tier
Data management tier
Client program
Database server
Application server
Three tier architecture• Pros:
– Heterogeneous systems– Thin clients– Integrated data access– Scalability– Development:
• Code for business logic is centralized• Interaction between tiers through well-
defined APIs.
Timeline for Database Systems Developments
• before 1960 transition from punched card and tape• 1960s, from file management to databases• 1970s, CODASYL and Relational Model
– Codd (IBM) Relational Model– Chen introduced Entity Relationship Model– Query languages developed (SQL)
• 1980s, Client/Server DBs, Oracle, DB2• 1990s, web-based information delivery
– Trends: expert DBs, object DBs, distributed DBs• 2000s, Enhancing database technology for Web
storage and access– Bioinformatics: genetic and protein information,
medical records– Using the Web as a database
Questions?