Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 1Oracle9i: SQL1 Chapter 1 Overview of Database Concepts.

Similar presentations


Presentation on theme: "Chapter 1Oracle9i: SQL1 Chapter 1 Overview of Database Concepts."— Presentation transcript:

1 Chapter 1Oracle9i: SQL1 Chapter 1 Overview of Database Concepts

2 Chapter 1Oracle9i: SQL2 Chapter Objectives Identify the purpose of a database management system (DBMS) Distinguish a field from a record and a column from a row Identify the basic components of an Entity- Relationship Model Define the three types of relationships that can exist between entities

3 Chapter 1Oracle9i: SQL3 Chapter Objectives Explain the purpose of normalization Describe the role of a primary key Identify partial dependency and transitive dependency in the normalization process

4 Chapter 1Oracle9i: SQL4 Chapter Objectives Explain the purpose of a foreign key Determine how to link data in different tables through the use of a common field Explain the purpose of a structured query language (SQL)

5 Chapter 1Oracle9i: SQL5 Database Terminology Database – logical structure to store data Database Management System (DBMS) – software used to create and interact with the database

6 Chapter 1Oracle9i: SQL6 Database Components Bit (0 or 1) is the smallest data unit. A few bits (usually 8) can be organized into a byte. Each byte represents a character that is the basic building block of information. Field Record File

7 Chapter 1Oracle9i: SQL7 Database Components - Character Basic unit of data Can be a letter, number, or special symbol

8 Chapter 1Oracle9i: SQL8 Database Components - Field A group of related characters Represents an attribute or characteristic of an entity Corresponds to a column in the physical database

9 Chapter 1Oracle9i: SQL9 Database Components - Record A collection of fields for one specific entity Corresponds to a row in the physical database

10 Chapter 1Oracle9i: SQL10 Database Components - File A group of records about the same type of entity File (a table)Field AField BField C…….. Record 1 Record 2 Record 3 Record 4 …….

11 Chapter 1Oracle9i: SQL11 What Are Relations A Relational DB is a collection of relations A relation is a two-dimensional table that has the following characteristics –Rows contain data about an entity –Columns contain data about attributes of the entity –Cells of the table hold a single value –Each column has a unique name –The order of the columns is unimportant –The order of the rows is unimportant –No two rows may be identical

12 Chapter 1Oracle9i: SQL12 What Are Relations Interchangeably Used Terms in Relational Database –table = file = relation –row = record= tuple –column = field = attribute

13 Chapter 1Oracle9i: SQL13 Components Example

14 Chapter 1Oracle9i: SQL14 The Customers File/Table/Relation CUSTOMERS NameAddressCityState……. Customer AJohn123 5 th St.HuntsvilleAL……. Customer B…………….…………….……. Customer C Customer D …….

15 Chapter 1Oracle9i: SQL15 Review of Database Design Systems Development Life Cycle (SDLC) Entity-Relationship Model (E-R Model) Normalization

16 Chapter 1Oracle9i: SQL16 Systems Development Life Cycle (SDLC) 5 Phases Systems investigation – understanding the problem Systems analysis – understanding the solution Systems design – creating the logical and physical components

17 Chapter 1Oracle9i: SQL17 Systems Development Life Cycle (SDLC) Systems implementation – placing completed system into operation Systems maintenance and review – evaluating the implemented system

18 Chapter 1Oracle9i: SQL18 Entity-Relationship Model (E-R Model) Used to depict the relationship that exists among entities. Entity Definitions –An object of interest to the business –A class or category of thing –A named thing or a thing of significance about which the business needs information –Entity instance is the representation of a particular entity. Attribute is a characteristic of an entity.

19 Chapter 1Oracle9i: SQL19 Entities: Examples COURSE STUDENT INSTRUCTOR code name fee length name phone no. name phone no

20 Chapter 1Oracle9i: SQL20 E-R Model Symbols

21 Chapter 1Oracle9i: SQL21 Relationships: An Example taken by enrolled in STUDENT COURSE Each STUDENT may be enrolled in one or more COURSES Each COURSE may be taken by one or more STUDENTS

22 Chapter 1Oracle9i: SQL22 Relationships The following relationships can be included in an E-R Model: –One-to-one –One-to-many –Many-to-many

23 Chapter 1Oracle9i: SQL23 One-to-one Relationship Each occurrence of data in one entity is represented by only one occurrence of data in the other entity Example: Each individual has just one Social Security Number (SSN) and each SSN is assigned to just one person

24 Chapter 1Oracle9i: SQL24 One-to-many Relationship Each occurrence of data in one entity can be represented by many occurrences of the data in the other entity Example: A class has only one instructor, but each instructor can teach many classes

25 Chapter 1Oracle9i: SQL25 Many-to-many Relationship Data can have multiple occurrences in both entities Example: A student can take many classes and each class is composed of many students Can not be included in the physical database

26 Chapter 1Oracle9i: SQL26 Relationship Types: More Examples Many-to-One One-to-One Many-to-Many

27 Chapter 1Oracle9i: SQL27 Many-to-One Relationships CUSTOMER SALES REPRESENTATIVE assigned to visited by

28 Chapter 1Oracle9i: SQL28 Many-to-Many Relationships PATIENT HEALTH CARE WORKER assigned to attended by

29 Chapter 1Oracle9i: SQL29 One-to-One Relationships BICYCLERIDER the rider is ridden by

30 Chapter 1Oracle9i: SQL30 Entity-Relationship Model An entity is usually represented as a square or rectangle. A line between two entities depict their relationships (a dashed line for optional relationship) –One-to-one: straight line –One-to-many: a straight line with a “crowfoot” at the “many” end. –Many-to-many: a straight line with a “crowfoot” at each end.

31 Chapter 1Oracle9i: SQL31 Example E-R Model

32 Chapter 1Oracle9i: SQL32 Normalization Determines required tables and columns for each table Multi-step process. Application of a series of rules that gradually improve the design Used to reduce or control data redundancy

33 Chapter 1Oracle9i: SQL33 Unnormalized Data Contains repeating groups in the Author column in the BOOKS table

34 Chapter 1Oracle9i: SQL34 First-Normal Form (1NF) Primary key is identified –Primary key is a field or a set of fields (composite PK) that serve to uniquely identify each record in a table. e.g. the SSN field in a table that contains students’ record. Repeating groups are eliminated. Single valued attributes only

35 Chapter 1Oracle9i: SQL35 Primary Keys Primary key –Value must be unique for each record –Serves to identify the record –Present in every record –Can’t be NULL –Usually numeric

36 Chapter 1Oracle9i: SQL36 Candidate Keys Candidate key –Any field that could be used as the primary key –Should be a unique, unchanging numeric field

37 Chapter 1Oracle9i: SQL37 Surrogate Keys Surrogate key: created to be the record’s primary key identifier when no suitable primary key exists Surrogate key has no real relationship to the record to which it is assigned, other than to identify the record uniquely Developers configure the database to generate surrogate key values automatically Surrogate keys are always numerical fields

38 Chapter 1Oracle9i: SQL38 Foreign Keys Foreign key: a field in a table that is a primary key in another table Foreign key creates a relationship between the two tables Foreign key value must exist in the table where it is a primary key

39 Chapter 1Oracle9i: SQL39

40 Chapter 1Oracle9i: SQL40 Composite Keys Composite key: a unique key that you create by combining two or more fields Usually comprised of fields that are primary keys in other tables

41 Chapter 1Oracle9i: SQL41 First-Normal Form (1NF) ISBN and Author columns together create a composite primary key

42 Chapter 1Oracle9i: SQL42 Composite Key-P.D. More than one column is required to uniquely identify a row Can lead to partial dependency - a column is only dependent on a portion of the primary key

43 Chapter 1Oracle9i: SQL43 Second-Normal Form (2NF) Partial dependency must be eliminated –Break the composite primary key into two parts, each part representing a separate table

44 Chapter 1Oracle9i: SQL44 Second-Normal Form (2NF) BOOKS table in 2NF

45 Chapter 1Oracle9i: SQL45 Third-Normal Form (3NF) Publisher contact name has been removed

46 Chapter 1Oracle9i: SQL46 Summary of Normalization Steps 1NF: eliminate repeating groups, identify primary key 2NF: table is in 1NF and partial dependencies eliminated 3NF: table is in 2NF and transitive dependencies eliminated

47 Chapter 1Oracle9i: SQL47 Linking Tables Once tables are normalized, make certain tables are linked Tables are linked through a common field A common field is usually a primary key in one table and a foreign key in the other table A foreign key is a column that is a primary key of another table

48 Chapter 1Oracle9i: SQL48 Linking Tables For every value of a foreign key there is a primary key with that value A foreign key can never be null A primary key must exist before the foreign key can be defined

49 Chapter 1Oracle9i: SQL49

50 Chapter 1Oracle9i: SQL50 JustLee Books’ Database Assumptions –No back orders or partial shipments –Only US addresses –Shipped orders are purged (deleted) at the end of the month

51 Chapter 1Oracle9i: SQL51 Structured Query Language (SQL) and DBMS Data sublanguage Structured Query Language (SQL) is a data sublanguage that has constructs for defining and processing a database It can be –Used stand-alone within a DBMS command –Embedded in triggers and stored procedures –Used in scripting or programming languages All DBMS use some variation of the standardized ANSI-SQL. (Oracle SQL Plus)

52 Chapter 1Oracle9i: SQL52 Structured Query Language (SQL) and DBMS SQL was developed by IBM in late 1970s SQL-92 was endorsed as a national standard by ANSI in 1992 Data Definition Language (DDL) is used to define database structures Data Manipulation Language (DML) is used to query and update data DBMS: Database Management System Examples of DBMS: Oracle, DB2, Microsoft Access, SQL Server

53 Chapter 1Oracle9i: SQL53 Client/Server DBMS Client/server database Takes advantage of distributed processing and networked computers by distributing processing across multiple computers DBMS server process runs on one workstation, and the database applications run on separate client workstations across the network

54 Chapter 1Oracle9i: SQL54 Client/Server DBMS Preferred for database applications that retrieve and manipulate small amounts of data from databases containing large numbers of records because they minimize network traffic and improve response times Organizations generally use a client/server database if the database will have more than 10 simultaneous users and if the database is mission critical

55 Chapter 1Oracle9i: SQL55 Client/Server Database Architecture

56 Chapter 1Oracle9i: SQL56 The Oracle9i Client/Server Database All Oracle server- and client-side programs use Oracle Net, a utility that enables the network communication between the client and the server

57 Chapter 1Oracle9i: SQL57 Oracle DBMS Oracle is the world’s most popular DBMS It is a powerful and robust DBMS that runs on many different operating systems Oracle DBMS engine: Personal Oracle and Enterprise Oracle Example of Oracle products –SQL*Plus: a utility for processing SQL and creating components like stored procedures and triggers

58 Chapter 1Oracle9i: SQL58 Oracle SQL *Plus Oracle SQL*Plus or the Oracle Enterprise Manager Console may be used to manage an Oracle database SQL*Plus is a text editor available in all Oracle Case-insensitive The semicolon (;) terminates a SQL statement The right-leaning slash (/) executes SQL statement stored in Oracle buffer


Download ppt "Chapter 1Oracle9i: SQL1 Chapter 1 Overview of Database Concepts."

Similar presentations


Ads by Google