(Databases) Databases & DBMS & ER Model & Relational Databases
Databases
: an organized collection of data that exists over a long period of time ( Persistent storage )
- collection of data about different kinds of individuals(Entities) and the relationship between individuals.
DBMS ( Database Management System )
: a complex software package developed to store and mange databases
- supports convenient, efficient, and secure access and manipulation of large amounts of data.
- (high-level) Programming interface : gives users the ability to create, query, and modify the data
- Persistent stroge : supports the storage of data over a long period of time
- Transaction management and recovery : controls access to shared data from multiple, simultaneous users with properties Atomicity, Consistency, Isolation, Durability (ACID)
In a database application system, the DBMS acts as an "interface" between the database application and the database.
* 3 types of inputs to DBMS
: Queries, Transactions(data modification), and Schema Creations/Modification.
: transcation manager: responsible for the consistency of the data
* Two Types of Languages provided by DBMS (ex - SQL)
- DDL (Data Definition Language)
: language for defining a database schema
- DML (Data Manipulation Language)
: language for accessing and manipulating the data
==> Database system = Database + DBMS
ER Model
: An Entity Relationship shows how different entity sets in the DB relate to each other, and the constraints that my exist.
Relational Databases
: A relational database is a set of relations ( Relations can be viewd as tables of data )
(ex) Oracle, IBM, Microsoft, etc.
What is Relations??
: A relation schema describing its structure includes a set of attributes(ordered columns in a table)
and each attribute has a domain(int, varchar, float,...) which specifies the set of valid values for the attribute
Data Independence
: the ability to modify definition of schema at one level with littel or no affect on the schema at a higher level.