Document Sample
into_db Powered By Docstoc
					Introduction to Databases
      Case Example: File based Processing

•   Real Estate Agent’s office
•   Property for sale or rent
•   Potential Buyer/renter
•   Staff/employees
•   3-bed room apts for sales?
•   Flats within 3 miles of the city?
•   Average price of house?
•   Average rent for 2 BR flat?
•   Total annual salary for staff?
• Expected monthly turnover of renters?
• This month’s turnover compare to the last
          Files in Sales Dept
Selling and renting of properties
• Property_for_rent (Pno, Street, Area, City,
  Pcode, Type, Rooms, Rent, Ono)
• Owner (Ono, Fname, Lname, Address,
  Tel_no, Pref_Type, Max_rent)
Potential renters
Renter (Rno, Fname, Lname, Address,
  Tel_No, Pref_Type, Max_rent)
        Files in Contract Dept
• Lease(Lno, Pno, Rent, Payment, Deposit,
  paid, Start, Finish, Duration)
• Property_for_rent (Pno, Street, Area, City,
  Pcode, Rent)
• Renter (Rno, Fname, Lname, Address,
• Data entry
• File maintenance
• Reports generation
           Another example
Payroll Dept
Staff_salary(Staff No, First Name, Last Name,
  Address, Date_of_Birth, Salary, National
  Insurance Number, Branch Number)
Personnel Dept:
Staff(Staff No, First Name, Last Name,
  Address, Telephone Number, Position,
  Date_of_Birth, Salary, National Insurance
  Number, Branch Number)
            File Based Processing
                Data entry       File handling routines
                and reports          File definition
 Sales             Sales application programs

               Data entry       File handling routines
               and reports          File definition
Contracts        Contracts application programs
    Limitations of File-Based Processing

•   Separation and Isolation of data
•   Duplication of data
•   Data dependence
•   Incompatibility of files
•   Fixed queries/ proliferation of application
• “A shared collection of logically related
  data (and a description of this data)
  designed to meet the information needs of
  an organization.”
           Entity Relationship Diagram


                     Property_for    Has            Branch
Viewing      Takes


 Renter                                           Owner
         Parts of ER diagram
• Six entities (the rectangles): Branch, Staff,
  Property_for_Rent, Owner, Renter and
• Six relationships (the diamonds):
  IsAllocated, Has, Overseas, Owns,
  Requests, and Takes
• “ A software system that enables users to
  define, create and maintain the database and
  provides controlled access to this database.”
• Data definition Language (DDL): data
  types, structures and constraints on the data.
• Data Manipulation Language (DML):
  insert, update, delete, and retrieve data
• Query Language: general enquiry facility
• Two types of DML:
  – Procedural: manipulates the database record by
  – Non-Procedural: operates on a set of records.
       • Most common is Structured Query Language (SQL)
• Controlled Access to the database:
  –   security system
  –   integrity system
  –   Concurrency controlled, shared access
  –   recovery control system
  –   user accessible catalog
            Database Processing
               Data entry
               and reports
Sales       Sales application
                                Property, Owner,
                                Renter and Lease   Database
                                 details + File
               Data entry         Definitions
               and reports
Contracts   Contracts application
     Components of DBMS environment

Hardware   Software            Procedures   People

    Machine           Bridge         Human
• Some DBMS run only on particular
  hardware and operating systems
• Minimum amount of main memory and disk
  space to run
• Client -Server architecture:
  – Central computer runs the backend of the
  – Other computers run the frontend
Dream Home hardware configuration

                                   Northern Office

Western Office   Database server                Eastern Office

                                   Southern Office
• The DBMS software
• Application programs: C, COBOL, Fortran, Ada
• Using a fourth level language such as SQL
• Fourth generation tools:
  –   rapid development of applications
  –   non-procedural query languages
  –   report generators
  –   form generators
  –   graphic generators
  –   application generators
• Fourth generation tools can improve productivity.
• The structure of the database is called the schema.
• Tables: Property_for_Rent, Owner, Renter and
• Attributes
• System Catalog contains:
  –   Names, types, and sizes of data items
  –   Integrity constraints on data
  –   Names of authorized users who have access to the data
  –   What indexes and storage structures are being used-
      Tree structures.
•   Log on to the DBMS
•   Use particular DBMS facility or application program
•   Start and stop the DBMS
•   Make backup copies of the database
•   Handle hardware and software failures
•   Change the structure of the table, reorganize the data across multiple disks,
    improve performance, or archive data to secondary storage.

• DB engineers, DB designers, DB developers/
Data and database administrators
• Data Administrator (DA)
   – management of data (database planning, development,
     maintenance of standards, policies, procedures and
     conceptual and logical database design).
• Database Administrators:
   – Physical database design and implementation, security
     and integrity control, maintanence of the operational
     system and ensuring satisfactory performance for the
     applications and users.
           Database designers
• Logical database designers:
  – Entities, attributes, relationships, constraints
    Business rules
• Physical database designers:
  – Decides how it is to be physically realized.
     Application Programmers
• Retrieving, inserting, updating and deleting
• Programs
  – Third Generation Language (3GL)
  – Fourth Generation Language (4GL)
• End Users:
  – Inexperienced Users
  – Sophisticated users
             The Paradigm Shift
• The structure of the database is determined using
  the database design.
• Paradigm shift: think of the data first and the
  application later.
• Poorly designed database --> errors
• Well designed database --> correct information
• A complete methodology for database design.
  – Entity- Relationship diagram
  – Guidelines to help identify the entities, attributes and
        Advantages of Databases
• Control of data redundancy
• Data consistency
• More information from the same amount of data
• Sharing the data
• Improve data integrity and improve security
• Enforce standards
• Economies of scale
• Balance the conflicting requirements
• Improve data accessibility and responsiveness
• Increase productivity
• Improve maintenance through data interdependencies (pgm-data
• Increase concurrency
• Improve backend recovery services
     Disadvantages of Databases
•   Complexity
•   Size
•   Cost of DBMS
•   Additional hardware costs
•   Cost of conversion
•   Performance
•   High impact of a failure