Database Design Methodology. Lesson 1: Introduction to Databases. Objectives. Define a database Identify and discuss file-based data systems Define relational database Define and describe DBMSs, and identify their advantages and disadvantages Choose the correct type of database
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation
Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement.Téléchargez la présentation en cliquant sur ce lien.Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.
Objectives • Define a database • Identify and discuss file-based data systems • Define relational database • Define and describe DBMSs, and identify their advantages and disadvantages • Choose the correct type of database • Discuss the origins of relational databases
What Isa Database? • File-based databases • Flat-file databases • The evolution of databases
Relational Databasesand DBMSs • Relational databases • Structured Query Language • Database administrator • Advantages and disadvantages of DBMSs • Choosing the correct database type
The Origins ofRelational Databases • Codd first proposed the relational data model in 1970 • System R • Development of SQL • INGRES • IBM UK Scientific Center
Summary • Define a database • Identify and discuss file-based data systems • Define relational database • Define and describe DBMSs, and identify their advantages and disadvantages • Choose the correct type of database • Discuss the origins of relational databases
Objectives • Define and discuss multitier database architecture • Define relational model terminology • Describe different relational table types • Explain primary and foreign keys • Discuss data models and data relationships • Define database languages
Database Languages • Data definition language • Data manipulation language • Data control language • Data dictionaries
Summary • Define and discuss multitier database architecture • Define relational model terminology • Describe different relational table types • Explain primary and foreign keys • Discuss data models and data relationships • Define database languages
Objectives • Explain the database design life cycle • Discuss database planning • Describe a database requirements document • Discuss the criteria for selecting a DBMS • Discuss the criteria for selecting an application interface
Create a database strategy Define database application scope Create a database requirements document Design the database Select a DBMS Design the database application Create database prototypes Test the database application Implement the database application Convert legacy data Maintain the database DatabaseDesign Life Cycle
Selecting a DBMS • Selection criteria • Data definition functionality • Physical criteria • Access criteria • Transactions • Utilities • Development tools • Miscellaneous features
Selecting anApplication Interface • GUI considerations • Descriptive page titles • Clear instructions • Consistent grouping of input fields • Logically labeled fields • Consistent color use • Properly sized data entry fields • Logical cursor movement • Error messages • Clearly indicated optional fields • Completion message
Summary • Explain the database design life cycle • Discuss database planning • Describe a database requirements document • Discuss the criteria for selecting a DBMS • Discuss the criteria for selecting an application interface
ConceptualDatabase Design • Identifying entities • Identifying attributes and attribute domains for entities • Identifying relationships • Identifying candidate and primary keys for entities • Creating an Entity-Relationship diagram • Reviewing the ER model by the user and design team
Entity-Relationship Models • Creating ER models • Defining domains • Common SQL data types • Determining data relationships • Recursive relationships
Summary • Describe relational database design methodology • Identify the effects of poor design practices • Create Entity-Relationship models • Identify entities and relationship types • Identify entity attributes and domains • Determine primary and candidate keys
Objectives • Define normalization • Explain normal forms • Define and discuss 1NF • Define and discuss 2NF • Define and discuss 3NF • Define and discuss BCNF • Explain the normalization process
What IsNormalization? • Normal forms • First normal form • First normal form anomalies • Second normal form • Second normal form anomalies • Third normal form • Boyce-Codd normal form
Related Concepts • Decomposition • Atomic value • Partial functional dependency • Transitive dependency • Denormalization
Summary • Define normalization • Explain normal forms • Define and discuss 1NF • Define and discuss 2NF • Define and discuss 3NF • Define and discuss BCNF • Explain the normalization process
Objectives • Identify logical database design issues • Identify the cardinality of data relationships • Create a logical data model from a conceptual data model • Use a database definition language • Define integrity constraints • Create and validate an enterprise data model
Creating aLogical Data Model Logical data model creation Logical data model creation Normalization Normalization Data model refinement Data model refinement
Summary • Identify logical database design issues • Identify the cardinality of data relationships • Create a logical data model from a conceptual data model • Use a database definition language • Define integrity constraints • Create and validate an enterprise data model
Objectives • Identify physical database design issues • Describe how to create base relations for a target DBMS using a DDL • Identify and create enterprise constraints for a target DBMS • Define secondary indexes • Define denormalization • Create user views • Design database access rules
PhysicalDatabase Design • Creating base relations for a target DBMS • Data definition language