Problem Solving - Computer Science 101

advertisement
DAY 9:
DATABASES
Rohit
Rorohit@mix.wvu.edu
September 21, 2015
1
SCENARIO MANAGER
• Scenario Manager is a what-if analysis
tool that allows you to define up to 32
scenarios to compare their effects on
calculated results
• Data->Data Tools->What-If Analysis>Scenario Manager
• Example: Profit calculations for a business
based on units sold, production cost per
unit, shipping cost per unit
2
ADDING SCENARIOS
• Data->Data Tools->What-If Analysis>Scenario Manager
• Add…
– Scenario name
– Changing cells
– Set values for each cell
• Example:
– Best Case: 75,000 units, $38/unit production cost,
$0.30/unit shipping cost
– Likely Case: 50,000, $42.95, $0.5
– Worst Case: 25,000, $48, $0.75
3
WORKING WITH SCENARIOS
•
•
•
•
Delete
Edit
Show
Summary
– Regular summary
– PivotTable summary
4
SOLVER
• Solver is similar to goal seek, but it allows
multiple input values to change
• Solver is an Add-In, so it must be loaded
before you can use it
– File->Options->Add-Ins->Manage: Excel AddIns-> Go…
– Check “Solver Add-in”-> OK
5
DATABASES
• A database is an organized collection of
data
• There are many types of databases
– Flat File
– XML
– Workbooks
– Relational
– Key-Value Store
6
POPULAR DROP-OUT BILLIONAIRES
(IMPORTANCE OF COMPUTER SKILLS)
7
WHY LEARN THESE SKILLS?
• Database skills are an essential part of basic
computer skills like Programming.
• Limitless possibilities with a 800$ computer
from the comfort of home (consume or
produce).
• Create own website/blog (commercial,
personal).
• Computer skills like Programming, Database
Management, Blogging are like culinary skills.
• Business Plan competition.
8
WHERE ARE DATABASES USED?
• Storing bank records, corporate data, etc.
• Storing login credentials for
websites/blogs.
• Store content of popular websites like
Flickr.com, YouTube.com, etc.
• Store content of popular services like
Netflix, Instagram,Pandora, iTunes,
Spotify, Game Center (iOS), App Store,
Play Store (Android App Store).
9
WHERE ARE DATABASES USED?
Source: oracle.com
10
RELATIONAL DATABASES
• Access is a relational database
– A relational database is a collection of data
items organized as a set of formally described
tables from which data can be accessed
easily
– In addition to table definitions, there are also
relationships between tables
11
RECORDS AND FIELDS REVIEW
• A single entry in a table is called a “record”
– A record (row) is one or more pieces of data
about a single entity
• Each piece of data in a record is a “field”
(column).
• A table definition lists all the fields the records
in that table have
– The definition can define default values for fields
– Some fields are required for each record, others
are optional
12
KEYS
• Each table has to have a “primary key”.
This is a field, or a combination of fields
that will be unique to each record
• Keys allow you to identify a particular
record
• You can use the key in other tables to
reference the record
13
INDEXES
• Indexes are an ordering of a key or other
field that is computed on creation and kept
up to date as the database is updated
• By using the index, the database software
is able to quickly retrieve the record given
the field value
14
RELATIONSHIPS
• By including a the key from one table as a
field in a different table, we create a
relationship between the two tables
• This allows us to link the data between two
tables
• In the second table, the field is known as a
“foreign key”
15
EXAMPLE
• Two tables: People, PhoneNumbers
– People: id, first_name, last_name, birthdate
– PhoneNumbers: id, country_code, area_code,
number, person_id
• PhoneNumbers.person_id would hold the
same value as People.id for phone
numbers that belong to the given person
16
CASCADING
• If the records with the foreign key are only
used as an extension of the original table,
you may want to cascade updates and/or
deletes
– Deletes: If the original record is deleted, the
foreign key record is deleted
– Updates: If the key of the original record is
changed, the foreign key is updated to match
17
PLANNING DATABASES
• Define what tables you need
• Define what fields belong in each table
• Define what data types each field should
be
• Define default values for each field
• Choose between required and optional
18
NORMALIZATION
• Normalization is a process of organizing
fields and tables to minimize redundancy
of data
– DRY (don’t repeat yourself)
– If you repeat yourself, when you need to
make a change you have to change it
everywhere or you will have problems
19
SQL
• SQL is structured query language
• SQL is how Access interacts with data under the
hood
• INSERT INTO ‘table’ (‘field1’, ‘field2’) VALUES
(‘value1’, ‘value2’)
• UPDATE ‘table’ SET ‘field1’ = ‘value1’ WHERE
‘field2’ = ‘value2’
• DELETE FROM ‘table’ WHERE ‘field’ = ‘value’
• SELECT ‘field1’ FROM ‘table’ WHERE ‘field2’ =
‘value’
20
COMMON EXCEL ISSUES
• Switch Row/Column
• Merge (but not center)
• Relative/Absolute/Mixed References
21
Download