Download presentation
Presentation is loading. Please wait.
Published byAmy Morrison Modified over 9 years ago
1
CS 101 – Access notes Databases (Microsoft Access) 4 parts of a database database design –Try to understand the ideas behind database design, not just the mechanics.
2
Access vs. Excel Excel emphasizes numbers Access emphasizes relationships some overlap Access is perfect for finding common info from 2 separate tables
3
Purpose of Access It’s a “database management system” Record keeping for a business –Requires a plan –one file, with many components Keep track of … so that: –Find cross-references –Generate reports
4
Database format Usually four parts: Tables (at least 1 is required) Queries Forms Reports
5
Navigating a table A database table looks like a spreadsheet! Record = row Field = column Two ways to view: –Design view, to start –Datasheet view, to enter data Primary Key!
6
Example questions In a stock portfolio: –Which stocks have lost money? –When did I buy those stocks? Which class is easier: CS 22 or CS 25? –Check grades in each class –Check grades for students who’ve taken both Among customers who bought a new generator last year, what have they bought since?
7
Relieve tedium Suppose we want to maintain info on orders. Better to have two tables than one! Order#NameCityStateProductQty. 101J. MillerMiamiFLLaptop5 102G. NovakTampaFLPrinter3 103G. NovakTampaFLDVD-RW50 104G. NovakTampaFLKeyboard1 105J. MillerMiamiFLLamp4 106A. BikSan DiegoCAChair6 107T. LeeBuffaloNYFan3
8
Need multiple tables Ex. Librarian wants to contact graduating seniors who have overdue books. Need multiple tables: –Student info table Student #, name, year –Book table ISBN, title, author, … –Transaction or “check out” table Transaction #, ISBN, student #, Due date
9
Relationships When you have 2+ tables, there is almost always a relationship They share one field in common. –Can you tell what it is? Ex. Customers & Orders Ex. Students & Class roster Ex. Publishers & books
10
Animal hospital Keep track of customers, pets, visits Each gets its own table –What fields for each table? –Relationships What else does a database need?
11
Relationships
12
Fields in your table Anticipate questions –Age? store birth date –GPA? store credits and quality points –What year? store date of admission Store data in its smallest parts (e.g. address) Calculated fields don’t belong in table!
13
Table review We want to “manage” information: –Organize, insert, delete, retrieve To organize we… –Create a table (or “set”, “class”) consisting of records (or “objects”) each having fields(or “attributes”) Usually we’ll want 2+ related tables.
14
Fields in your table Anticipate questions –Age? store birth date –GPA? store credits and quality points –What year? store date of admission Store data in its smallest parts (e.g. address) Calculated fields don’t belong in table!
15
Queries Usually we ask about info from 2+ tables. By default, a query will perform an operation called a Cartesian Product, which gives all possible combinations. Ex. Name and City tables: Name Bob Mary Ken City Miami Pittsburgh
16
Cartesian Product Given 2 sets, find all possible ordered pairs. –Analogously for more than 2 sets. Great example: choosing a menu. –Appetizer –Entrée –Dessert Unfortunately, most DB queries are not like this! We get too many results.
17
Relationships We want to tell Access that there is a relationship between the tables, so we can create meaningful query. One-to-many is most common –“Each city has one or more employees.” –Now, query will return 3 results instead of 6: MiamiBob PittsburghMary Ken
18
One-to-One Can be useful if some information is confidential. What if we didn’t have any relationship? Empl #NamePosition 101SmithWelder 102Jonescarpenter Empl #Salary 10218,000 10117,000
19
1-1 Query When you combine tables that have a 1-1 relationship: Access will look for fields that are the same, and use this as a filter. –In previous example, we’ll have 2 results instead of 4. Employee 101’s information Employee 102’s information –Let’s look at another example.
20
What happens when we “join” these 1-1 tables? First nameLast namePositionCity BobFulleraccountantChicago BobDanielscashierGreenville BobDanielsaccountantIndianapolis AliceAndrewsgardenerGreenville First nameLast nameSalaryBirthday BobDaniels51,0007/1/67 ElenaCarlson21,0009/1/89 AliceAndrews81,0008/1/78
21
FirstLastPositionCitySalaryBirthday BobDanielscashierGreenville51,0007/1/67 BobDanielsaccountantIndianapolis51,0007/1/67 AliceAndrewsgardenerGreenville81,0008/1/78 First nameLast namePositionCity BobFulleraccountantChicago BobDanielscashierGreenville BobDanielsaccountantIndianapolis AliceAndrewsgardenerGreenville First nameLast nameSalaryBirthday BobDaniels51,0007/1/67 ElenaCarlson21,0009/1/89 AliceAndrews81,0008/1/78
22
One-many Relationships Referential integrity –Keep related records consistent –Cascade delete: allow deletion of “one” –Cascade update: allow update of “one” For example, changing someone’s CustomerID.
23
Many-to-many Ex. Customers to products Implement as 2 one-to-one “Order details” table Think of possible queries based on the 5 tables given in handout.
24
Other queries Besides ordinary “select” queries: Total – special case: also do subtotals Parameter – prompt user to tailor the result Action – modify underlying table –Make, delete from, append to, update Crosstab – 2-D subtotal –Ex. $, by species and month!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.