An Overview of Database Management System



Similar documents
MS Access Lab 2. Topic: Tables

Microsoft Access Basics

Using Delphi Data with Excel and Access

A Basic introduction to Microsoft Access

Introduction to Microsoft Access 2003

- Suresh Khanal. Microsoft Excel Short Questions and Answers 1

Microsoft Access 3: Understanding and Creating Queries

Microsoft Query, the helper application included with Microsoft Office, allows

Create a New Database in Access 2010

Tutorial 3. Maintaining and Querying a Database

Microsoft Office 2010

Planning and Creating a Custom Database

User Services. Microsoft Access 2003 II. Use the new Microsoft

Access Queries (Office 2003)

Unit 10: Microsoft Access Queries

Table and field properties Tables and fields also have properties that you can set to control their characteristics or behavior.

Microsoft Access 2010 Part 1: Introduction to Access

Microsoft Access 2010 handout

Creating and Using Databases with Microsoft Access

4. The Third Stage In Designing A Database Is When We Analyze Our Tables More Closely And Create A Between Tables

User Services. Intermediate Microsoft Access. Use the new Microsoft Access. Getting Help. Instructors OBJECTIVES. July 2009

IN THIS PROJECT, YOU LEARN HOW TO

Microsoft Access 2007 Module 1

Search help. More on Office.com: images templates

Business Insight Report Authoring Getting Started Guide

Use Find & Replace Commands under Home tab to search and replace data.

Access Database Design

Lab 2: MS ACCESS Tables

INTRODUCTION TO MICROSOFT ACCESS MINIMAL MANUAL

Microsoft Access 2010 Overview of Basics

Getting Started with Access 2007

Results CRM 2012 User Manual

Microsoft Access Part I (Database Design Basics) ShortCourse Handout

Introduction to Microsoft Access 2010

Creating tables in Microsoft Access 2007

Microsoft Access 2007

Files. Files. Files. Files. Files. File Organisation. What s it all about? What s in a file?

Consider the possible problems with storing the following data in a spreadsheet:

Introduction to Microsoft Access 2013

Web Intelligence User Guide

Microsoft Using an Existing Database Amarillo College Revision Date: July 30, 2008

Access Creating Databases - Fundamentals

IENG2004 Industrial Database and Systems Design. Microsoft Access I. What is Microsoft Access? Architecture of Microsoft Access

Microsoft Access Introduction

Filter by Selection button. Displays records by degree to which they match the selected record. Click to view advanced filtering options

How To Create A Powerpoint Intelligence Report In A Pivot Table In A Powerpoints.Com

Microsoft Access Glossary of Terms

Access Tutorial 2 Building a Database and Defining Table Relationships

Microsoft Office Access 2007 which I refer to as Access throughout this book

Getting Started Guide SAGE ACCPAC INTELLIGENCE

Exploring Microsoft Office Access Chapter 2: Relational Databases and Multi-Table Queries

1. INTRODUCTION TO RDBMS

Topic: Relationships in ER Diagram and Relationships in MS Access

Access Part 2 - Design

Microsoft Access Creating Filters and Tables

warpct.com MS Access 2010 Workbook courseware by WARP! Computer Training

Creating a Database in Access

Ken Goldberg Database Lab Notes. There are three types of relationships: One-to-One (1:1) One-to-Many (1:N) Many-to-Many (M:N).

Simple Invoicing Desktop Database with MS Access c 2015 by David W. Gerbing School of Business Administration Portland State University

MS Access. Microsoft Access is a relational database management system for windows. Using this package, following tasks can be performed.

Tips and Tricks SAGE ACCPAC INTELLIGENCE

Data Tool Platform SQL Development Tools

PROJECT ON MICROSOFT ACCESS (HOME TAB AND EXTERNAL DATA TAB) SUBMITTED BY: SUBMITTED TO: NAME: ROLL NO: REGN NO: BATCH:

MICROSOFT ACCESS 2003 TUTORIAL

Chapter 5. Microsoft Access

ACCESS Importing and Exporting Data Files. Information Technology. MS Access 2007 Users Guide. IT Training & Development (818)

Scheduling Software User s Guide

Pastel Evolution BIC. Getting Started Guide

Reduced Quality Sample

Access Tutorial 1 Creating a Database. Microsoft Office 2013 Enhanced

Getting Started Guide

MICROSOFT OUTLOOK 2010 WORK WITH CONTACTS

Microsoft Access 2003 Module 1

Access 2010 Intermediate Skills

Introduction to Computing. Lectured by: Dr. Pham Tran Vu

Access 2010: Creating Queries Table of Contents INTRODUCTION TO QUERIES... 2 QUERY JOINS... 2 INNER JOINS... 3 OUTER JOINS...

BID2WIN Workshop. Advanced Report Writing

1 File Processing Systems

ECDL. European Computer Driving Licence. Database Software BCS ITQ Level 1. Syllabus Version 1.0

Lab Manual. Databases. Microsoft Access. Peeking into Computer Science Access Lab manual

Click to create a query in Design View. and click the Query Design button in the Queries group to create a new table in Design View.

General User/Technical Guide for Microsoft Access

Logi Ad Hoc Reporting System Administration Guide

Microsoft Access 2010: Basics & Database Fundamentals

MyOra 3.0. User Guide. SQL Tool for Oracle. Jayam Systems, LLC

MAS 500 Intelligence Tips and Tricks Booklet Vol. 1

Microsoft Access 2007 Introduction

Lab 9 Access PreLab Copy the prelab folder, Lab09 PreLab9_Access_intro

Installing LearningBay Enterprise Part 2

Database File. Table. Field. Datatype. Value. Department of Computer and Mathematical Sciences

Excel Database Management Microsoft Excel 2003

Creating QBE Queries in Microsoft SQL Server

ISM 318: Database Systems. Objectives. Database. Dr. Hamid R. Nemati

Structure a Database. Key Concepts LESSON. Access 380. Lesson 2: Structure a Database. Standards

Lesson 07: MS ACCESS - Handout. Introduction to database (30 mins)


Foundations of Business Intelligence: Databases and Information Management

Querying the Data Warehouse Using Microsoft Access

Transcription:

q E An Overview of Database Management System Components of an Information System One of the most important functions of any computer system is to provide powerful tool for management of Information System of an organization, in which raw data (Transactions as inputs) is processed to produce meaningful information (Reports as output for different levels of management). The processed data is stored in the form of data files usually referred as Databank. This databank becomes one of the sources of knowledge management required for decision support for monitoring various activities as well as strategic planning etc. Thus components of an Information system can be categorized as follows: Transactions Processing System for processing raw data Management Reporting System to provide relevant reports to various levels of management Decision Support System for management activities like, monitoring & control, decision support and strategic planning etc. Executive Information Systems for senior executives In the real world environment, Information flow in the organization is horizontal (between various applications) as well as vertical (across hierarchically organized departments / branches etc). Thus in an organization, Information System can be designed at different levels as follows: Individual Applications Level Department Level Organization Level Intra-organization Level Training Division, NIC, New Delhi 1

Efficiency & effectiveness of any Information System very much depends upon the organization of data files in a data bank, and the procedures adopted for data management In this chapter basics of data management will be covered. E Conventional Approach for Data Management Conventionally, for each transaction processing application, separate databanks are created, and the data is stored as sequential files, thus making the process of data updating and retrieval very slow. Further, the following problems are also associated with conventional way of storing the data files: 1. Data Redundancy: Since, each application has its own data files, the other users within the department / organization can not have access to these data files. Thus for every application separate data files are maintained, even if they are common. This causes data redundancy, and wastage of storage space. 2. Data Inconsistency: Data redundancy leads to data inconsistency. Data inconsistency means discrepancy in values of data elements in same data files physically stored at different locations. 3. Data Isolation: The data files of common use, can not be made available for sharing, even if desired so. 4. Security: There can not be enforcement of centralized control on data access, as the data files are created / duplicated as per individual applications requirements. The decisions regarding storing the same data at multiple places are taken at various levels by different people, which are usually of ad hoc nature. Access controls planning becomes difficult in such situation. 5. Data Dependency : The coding in applications is very much dependent upon the data files design. Any change in design of data files (say addition of a new field, or deletion of a field) will warrant for changes to be made in the coding of application also, which uses it.. 2 Training Division, NIC, New Delhi

6. Lack of enforcement of standards: It is very difficult to enforce standards in data files designs, as centralized view of data files is never available. E Database Approach The Database technology allows logical grouping ( the way, the user wants to view it, as per specific needs of an application) of data files associated with different applications in such a way, that the above mentioned problems associated with conventional way of data management are minimized. A database can be defined as follows: Database is a databank, which is managed by a single agency, and it consists of inter-related files, in which data items are organized in such a way that one can have random access to data, as per specific needs of the users. Important terms associated with a database are: Field: It is the smallest unit of data, which can be stored in a database. For example, a student s name in a university s database would appear in the field named as student_name. Usually the data types in a filed are Numeric, Character string, Date, Memo, Logical, Hyperlink, Picture etc. The field is at times referred as attribute/data element / data item also. These nomenclatures can be used synonymously. Record: It is a collection of related stored fields. A student record may consist of collection of fields like Student s name, the course taken, the date of birth, contact address and the grade etc. File (Table): It is a collection of different occurrences of same type of stored record. A file is usually referred as a Table also, it describes an entity (something, about which data is to be stored). Training Division, NIC, New Delhi 3

Database: A logical grouping of related files would constitute a database. For example, A Student file in a database may be linked to another file say Library books issue, which keeps record of books issues to students. The two files can be linked together by a common field say Student code, which will get reflected in Student file, as well as Library books issue file. Primary Key: Every record in a file usually contains at least one field that uniquely identifies that record for the purpose of data retrieval, and updating of values of fields corresponding to a record. This identifier field is called the primary key, and it always has a unique value. Combination of more that one fields to act as identifier of a record is called Composite Primary Key. Foreign Key: For setting relationship between two tables, there should be at least one common field in two tables. Usually that common field is Primary key in one table, and it is called Foreign key in the second table. Foreign key can have repeated values also. E ö Types of Data Model (based on logical 1 data structuring) Three types of common Data Models 1. Hierarchical: The hierarchical database model rigidly structures data into an inverted tree in which each record contains two elements. The first is a single root or master field, often called a key, which identifies the type location or ordering of the record. The second is a variable number of subordinate fields, which define the rest of the data within a record. 2. Network: The network database model creates relationships among data through a linked-list structure in which subordinate records (called members) can be linked to more than one data elements (called an owner). 1 The way user wants to view it as per specific needs of the application 4 Training Division, NIC, New Delhi

3. Relational: The relational database model is based on the simple concept of flat tables consisting of rows and columns. In this model, a table is equivalent to a file, row is equivalent to a record, and each column is equivalent to a field. Relations between different tables can be set through common fields. ö Comparison between the Three Models Model Advantages Disadvantages Hierarchical database Searching is fast and efficient. Access to data is predefined by exclusively hierarchical relationships, predetermined by administrator. Limited search/ query flexibility. Not all data is naturally hierarchical. Network database Relational database Many more relationships between data elements can be defined. There is greater speed and efficiency than relational database models. Conceptual simplicity is its characteristic. There is no predefined relationships among data. High flexibility in ad hoc querying. New data and records can be added easily. This is the most complicated model to design, implement, and maintain. It has greater query flexibility than hierarchical model, but less than relational model. Processing efficiency and speed is lower. Data redundancy can not be eliminated completely. Training Division, NIC, New Delhi 5

ö Emerging Data Models 1. Relational Multidimensional Database: Used for building Data warehouse. 2. Object-Oriented: Consists of inter-related objects, similar to entities consisting of attributes, methods associated with the object, and its behavior). 3. Hypermedia: Stores chunks information in the form of nodes, for which links are established by the user, as per specific needs. 4. Geographical Information Database: Used for managing locational data for overlaying on maps and images. 5. Knowledge Database: Consists of decision rules used to evaluate situations and help users to take decisions like an expert. E Types of Database Architecture (based on physical locations of the data files and data processing) 1. Centralized: A centralized database has all the related files in one physical location. Even the processing of data is done at the centralized location. Users can have access to the database application from remote computers / terminals. 2. Stand alone: A stand alone database has all the related files and the procedures for processing the data at one physical location only. Others can not have access to the database application. 3. Distributed: Database has complete copies of a database, or portions of a database, in more than one location. In this type of setup, even the processes associated with data management are distributed in various computers over network, usually close to the user. 6 Training Division, NIC, New Delhi

There are two types of distributed databases: Replicated: A replicated database has complete copies of the entire database in more than one locations, primarily to alleviate the single-point-of-failure problems of a centralized database as well as to increase user access responsiveness. Partitioned: Database is subdivided, so that each location has a portion of the entire database. The divided portions of database are locally maintained and are made available to others also for retrieval and further processing etc. Client-Server: The present trend is to build Client / Server based databases, in which common use data is stored on the server computer, and local requirement data is stored on client systems. Usually, the processes at client machine, request server to provide required data. The processes at server end make the required data available at client computer for further processing. This is a typical example of distributed database. In a nutshell, database technology allows an organizational data to be processed as an integrated whole. It reduces artificiality imposed by separate files for separate applications and permits users to access data more naturally. Now let us look into the procedures associated with Database Management and the tools available to do so. Training Division, NIC, New Delhi 7

E ö Database Management System Introduction Between the physical database (i.e. the data actually stored on a physical media) and the users( people, who access or update data), there is a need to follow standard procedures for data manipulation (additions/deletions/updations) & data retrieval. The database application developers should be able to integrate these procedures with their application procedures, as per their specific needs. A set of such procedures is called Database Management System (DBMS). In computer terminology, DBMS is defined as a software tool, used by computers to achieve the orderly storage of data, its processing and retrieval. ö Major Functions of DBMS 1. Creation / modifications / deletion of tables, which may be physically located at one computer or different networked computers 2. Manipulation of records in tables by sorting / filtering them 3. Searching of desired records & updating / deleting them 4. Mathematical / logical operations on the values in the fields 5. Facilitates design of user interface to link and automate various modules of application 6. Processing of user queries and presentation of results in tabulated form or predesigned reports form ö Components of DBMS 1. Data Model: It defines the way, the database is conceptually designed for setting relationship between fields, records and files. 8 Training Division, NIC, New Delhi

2. Data Definition Language (DDL): It defines the structure of database, and the way how, each data item appears in the database. DDL provides link between logical and physical views of the database. 3. Data Manipulation Language (DML): Data Manipulation Language of DBMS has the capability to write procedures for automating various DBMS functions as mentioned above, as per user/application requirements. It can be used with any other application language (3 rd generation/4 th generation) also. 4. Structured Query Language( SQL): It is the most popular Relational Database language, which allows the user to request for required information in most natural way. It actually combines both DML & DDL features of DBMS. The syntax of SQL commands is independent of Relational database brand. 5. Data Dictionary: It stores definitions of data fields, their standard names, aliases, associated business functions, data ownership details etc. Data Dictionary helps in maintaining data consistency, enforcement of standards, avoid duplicacy. It also enables independence of applications design from database design. ö Commonly used Relational Database Management Systems Name of DBMS MS Access Oracle SQL Server UNIFY Visual Foxpro Database Architecture Stand alone / Distributed Architecture based (as Client systems only) Mainly Client Server / Centralized Architecture based; Stand alone PC version also is available Client Server / Centralized Architecture based Client Server / Centralized Architecture based Client Server / Centralized Architecture based Training Division, NIC, New Delhi 9

ö Database Systems: Advantages in a Nutshell 1. Better planning of corporate database 2. Enforcement of standards 3. Transparency 4. Better control of data by providing appropriate access controls 5. Problems like redundancy / inconsistency can be minimized 6. Easy enhancement of database is possible without disturbing the existing working applications. 7. Improved security 8. Enhanced data integrity 9. Reduced application development and maintenance costs 10. Better / Automated backup and recovery procedures E ö Getting Started with Database Design Conceptual Design To begin with, one needs to be clear about the Information System requirements, for which database and the procedures are to be designed. This can be done by adopting systematic technique 2 for structured analysis. The output of this process is known as System Requirements Specifications (SRS). It mainly consists of: 1. A well defined objective of database application 2. List of agencies who supply inputs 3. List of agencies / roles who receive reports 4. List of expected output reports and their layout 5. List of inputs transactions & data entry forms layout 2 Detailed explanation of this technique is beyond the scope of this document. 10 Training Division, NIC, New Delhi

6. List of major processes 7. Layout of User Interfaces to link various processes 8. List of entities (something that can be identified in the user s work environment and whose data should be stored in the database) 9. List of properties / attributes associated with the entities 10. Conceptual database design including the logical view of data files along with associated data elements In this section, conceptual database design only will be discussed. The conceptual database design is independent of type of type of DBMS. It is done in two stages as follows: 1. Entity Relationship Diagram The Entity Relationship (E-R) Diagram of a database is a model of the database from the user or business perspective. It identifies various entities about which data needs to be stored, and also the relationships between those entities. For example, in Library Information System, we should have two entities about which data needs to be stored in the database. These are students and the books. Since, a student can get issued more than one books at a time, and a book can be issued to many students at different issue dates, the relationship between the two entities will be represented as follows: Student M Gets issued M Books Training Division, NIC, New Delhi 11

2. Normalization: The next step is to list out various attributes of the entities and their relationships. There will be some common attributes, and some dependent attributes. These attributes ( which can be referred as data elements also) are analyzed to minimize redundancy, and maximize integrity. This process of analysis is called Normalization. After the normalization process, various tables are identified, which constitute record structure with grouped data elements. The identified tables are linked through common data elements. These common data elements are defined as Primary key / Foreign Key / Composite primary key. In our example of Library Information System, the following tables will be identified as an output of conceptual design. 1. Student table consisting of fields, Student-code, Student-name, Class, Date of birth, postal, address, phone no, etc. Here Student-code is primary key which is unique 2. Books table consisting of fields, Book-code, Book name, Author, cost, edition, Accession no. etc.. Here book-code is primary key, which is unique 3. Issue table consisting of fields, Student-code, Book-code, Issue-date, status Here Student-code+Book-code+ Issue-date is composite Primary key, which is unique. Student-code and Book-code are foreign keys, and can have duplicate values. 12 Training Division, NIC, New Delhi

Graphical Illustration: Student Table Student- Code Student- Student Class Date of birth Address Email- address Code Name 1 Shayam 1 st 11/05/1985 12, 2 nd Street, shayam@yahoo.com Year Janpath, New Delhi 2 Ashish 2 nd 21/07/84 11, Sector 7, ashish@hotmail.com Year Vikas Puri, New Delhi 3 --- --- --- --- ---- 4 -- -- -- -- -- Issue Table Book-Code Issue-date Status 1 1 12/10/2001 1 2 14/08/2002 Returned 2 2 14/08/2002 Books Table Book-code Book Name Author Edition Cost 1 Visual Basic I.K. Jain 1998 500 2 MS Access-An R.P. Singh 1997 200 Overview 3 --- --- --- --- Training Division, NIC, New Delhi 13

ö Physical Design In the physical design, the actual structures of tables are created using a particular DBMS package. The physical design shows how the files, records, fields are actually stored on the physical storage media, depending upon the type of database, the DBMS supports. This physical design giving complete logical view ( the way user wants to view it) of the database, is called schema. Various applications developers have the choice of getting different logical views (which may be even partial) of the same database. They can customize these views as per their specific needs. Such logical view is called subschema. DBMS provides tools for creating the subschemas. This characteristic of DBMS makes the database design independent of applications design. That means, any changes made in the database design will not affect already working applications, unless the data elements, being used by them are deleted from the database. 14 Training Division, NIC, New Delhi

E Getting Started with MS-Access MS Access is a Relational DBMS, for windows based desktop database applications, which may be stand alone or distributed over network. In a Client-Server environment, it is used to maintain database at the client end. Database in MS Access is referred as a collection of data, procedures, reports, interfaces etc. related to a particular purpose. It has mainly the following components. Tables to contain data in the form of records / fields. Forms to manipulate data and user interfaces to link forms, sub forms or processes. Queries to create logical view of data and also to find and retrieve desired data based on various conditions. Reports to print information in pre-laid formats Pages to publish the reports / queries output on Web Macros to club more that one operations and automate their executions Modules to add more functionality by writing codes using Visual Basic for Applications (VBA), which is scripting language integrated with MS Access. It is similar to Visual Basic. Training Division, NIC, New Delhi 15

q Case Study 1. Name of Database application : Employees Leave Record System (ELRS) 2. Broad objective of the application: To keep the information of employees and details of leave taken by them during the service. The system should also update the balance leave at the end of calendar year, by adding leave due in the coming year. 3. Brief description of the application This application is designed for Leave account maintenance of the employees of an organization. Year end processing to add Earned leave and initialize Casual Leave balance. 4. List of various reports expected to be generated Employee s details report Detailed leave report of an individual employee, along with leave at balance 5. List of various input forms Addition of data of new employees Updating of Employee s information Deletion of employees, who leave the organization Data entry of leave taken by an employee from time to time 6. List of major processes Maintenance of data of Employee (Additions/Deletions/Modifications) Maintenance of record of leave details Year end processing 16 Training Division, NIC, New Delhi

7. List of entities identified ( about which the data is to be stored ) Employee details Leave details 8. List of data items associated with above entities Employee: Leave details: Name, Designation, Date of Joining, Skill, Email address, employee photograph etc. Name of the employee, Designation, Leave type, Duration, Start Date, End Date, balance leave at credit. 9. Entity - Relationship Diagram ( Conceptual Design of database) Employee Takes Leave 10. After Normalization process, we will get the conceptual design in the form of the following two tables. Employee table consisting of fields: Employee-code, Name, Designation, Date of Joining, Skill, EL at credit, CL at credit, RH at credit, HPL at credit, Salary, Email address, employee photograph etc. Here Employee-code is the Primary Key. Training Division, NIC, New Delhi 17

Leave table consisting of fields: Employee-code, Leave type, Duration, Start-Date, End Date Here Employee-code + Start-Date is a Composite Key, and Employee-Code is Foreign Key. 11. User Interfaces Design Maintain Employees data Enter Leave Details Year End Processing Reports / Queries Reports Page Employee Report Creating Employee Label Leave Details of Individual employee Maintain Employee Data Add New Employee Modify Employee Data Delete Employee Data Enter Leave Details Form for entry of multiple leave details of an employee 18 Training Division, NIC, New Delhi

Few suggested enhancements to the above mentioned case study, which can be done by participants as assignment. Add login screen for screen for maintaining employee data to enforce Access controls. Calculate gross pay of employees and generate pay slips by automatically calculating DA from the basic salary. Add a filed in Leave table to set hyperlink to leave sanction order (MS Word file). Generate MS Word document for leave details statement for every employee with a provision to send it as an attachment to email of that employee (You cal use Mail merge option). Publish employees list on Web along with their leave at credit. Create a new table containing department code, and other details. In employee table, add a field for department, to which employee belongs. In the properties of this field, pickup the values for department field from the department table through lookup Wizard. Develop a module for periodic backup of tables. This process should get triggered, on mouse click on the main menu. Develop a module for automatic backup of tables. This process should get triggered, automatically on 1 st day of every month. On the similar lines of the case study, you can also develop a database application relevant to your work area. Training Division, NIC, New Delhi 19

q Starting MS Access Switch on the system. In case login dialog box appears, enter user name and password as User (Cabin No) (For example, for Cabin 42, user name and password will be user42). Click Start>>Programs>>MS Access. Dialog box shown in Figure 1 will appear. Select this for blank database option. Figure 1 Select Blank Access database option. The dialog box shown in Figure 2 will appear. 20 Training Division, NIC, New Delhi

Figure 2 Select the folder name in Save in option. Type Employee under File name. Click Create. Employee database window will open as shown in Figure 3. To open table for data entry To make modification in design of table Figure 3 To create new table Training Division, NIC, New Delhi 21

After the database has been created, different objects of the database like Tables, Queries, Forms, Reports etc. can be created by selecting appropriate tabs. Note: We are going to refer to this database window in later part of the workbook also. E ö Ways of Creating a Table Create table in design view In this option, table has to be created from scratch, in which its fields names, their data types and properties have to be entered. ö Create Table by using Wizard In this option, wizard dialog box will open with the steps provided to create a table. ö Create table by entering data In this option, only data has to be entered and it will take fields names as field1, field2 and so on and data type it will take automatically based upon data entered (one can rename the fields names, if required). E Creating New Table Double click Create table in Design View. Note: Another way to get Design view for new table, Click New>>Design View>>OK. New Table dialog box will appear as shown in Figure 4. 22 Training Division, NIC, New Delhi

Figure 4 As shown in Figure 5, enter names of fields in Field Name column, type of data to be entered in fields in Data Type column and enter description of fields in Description column if required. Figure 5 Training Division, NIC, New Delhi 23

E Saving the Table Click File>>Save. The dialog box as shown in Figure 6 will appear. Figure 6 Type the Table name as Employee and click OK. The dialog box as shown in Figure 7 will appear. Figure 7 E Select No. Table will be saved with the name Employee. Close the table Employee. Adding Records to a Table Select table Employee from database window. Click Open.Datasheet View of the table will open as shown in Figure 8. 24 Training Division, NIC, New Delhi

Figure 8 Start entering the data from the cursor placed at the first blank record. The following data may be entered as shown in Figure 9. Save and Close the table window. Figure 9 E Deleting Records Click on the record to be deleted. Select Edit>>Select Record. The record gets selected as shown in Figure 10. Figure 10 Training Division, NIC, New Delhi 25

Click Edit>>Delete Record from the menu bar, the record will be deleted. Note : To delete all record, click Edit>>Select All and press Delete button. But don t try this option otherwise you will lose whole data of that table. E ö ö Editing Data in Tables Cutting & Pasting Or Copying & Pasting Data Select the record to be cut or copied. Select Edit >> Cut (for cutting data) or Edit>>Copy (for copying data). Take the cursor to a new position in the table where the record is to be copied. Select Edit>>Paste. Locating Data Select the field where the data has to be searched, by clicking the Field Heading OR put the cursor anywhere in the column where the data has to be searched. Click Edit>>Find. The Find and Replace dialog box appears as shown in Figure 11. Click here to select the field. Figure 11 26 Training Division, NIC, New Delhi

ö Enter a string to search for, in the Find What: option, say ANIL. In Match option, select any of the three category provided. Choose Find Next to search for more records. Select Cancel to stop the search and close the dialog box. Replacing the existing data Click on the field name where the data is to be replaced. For example, click on Designation field Select Edit>>Replace. The Replace dialog box as shown in Figure 12 will appear. Figure 12 Type SA in Find What field. Click on the Replace With field. Type SSA. Click on Find Next button. It will find the first occurrence of the data. Click on Replace to replace the data in that field. Click on Find Next to find and then click Replace to replace the next occurrence of the data (If required, click Replace All to replace all such occurrences). Close the Find and Replace dialog box by clicking the Close button. Training Division, NIC, New Delhi 27

E Sorting Data Data stored in a table can be sorted on text, numbers, or date fields in ascending order (A to Z, zero to 9, or earliest to latest date). Or, you can sort in descending order (Z to A, 9 to zero, or latest to earliest date). Click on the Field on which the records are to be sorted. Click Records>>Sort>> Sort Ascending from the Record menu option. The option provides you to rearrange the records Ascending/Descending on Name field as shown in Figure 13. Figure 13 E Close the table window Click Yes, if changes are to be saved in the table. Modifying Table Design Select the table to be modified from the database window. Select Design. The table will open in Design View. The design of the fields in table can now be modified, i.e., the fields can be deleted, added or changed according to the requirements. After the modification, changes can be saved and the database window reappears. 28 Training Division, NIC, New Delhi

E Primary Key A Primary Key is a field (or group of fields) that uniquely identifies each record. When primary key is created, Access will do the following things: 1. Make sure no two records in the table have the same value in the field (or group of fields) that defines the primary key. 2. Keep records sorted (ordered) by the entries in the primary key. 3. Speed up processing. Note: No field that is part of a primary key can be left blank during data entry. ö Setting a Primary Key Open the table in Design view. Select the field for which primary key property has to be set. Click Edit>>Primary Key. The field which is set as the primary key, will have key icon in the row selector as shown in Figure 14. key icon row selector Figure 14 Note: If the data in a table contains duplicate data for the emp_code field, the error message will be displayed while defining the emp_code field as a primary key. To remove the error, first remove the duplicate data and then define field as a primary key. Training Division, NIC, New Delhi 29

ö E Removing Primary Key Setting Select the field for which primary key setting has to be removed. Click Edit>>Primary Key. It will remove primary key setting. Creating Second Table Let us now create another table Leave with the following fields: Emp_code Type_Leave Start_Date Duration End_Date Number Text Date Number Date Save this table as LEAVE table. Close the table design window and enter the data for this table. It may be noted that the values of Emp-code should be the same as those already mentioned in the Employee table. 30 Training Division, NIC, New Delhi

q Relationships In RDBMS systems, usually data is stored in more than one table, depending on the type of information. To bring the relevant information together in a Form/Report/Query, these tables need to be linked together. To link the tables together Relationships are used. For example, there are two tables Employee table, which contains employees details, and other Leave table, which contains the information about the leaves taken by all the employees. To create a report, which will give the details of the leaves taken by all the employees, relationship between the two tables Employee and Leave is required. Sample report having data from both the tables is shown in Figure 15. E How it works? Figure 15 In the above example, the fields in both tables must be linked so that they show relevant information about the employees. This linking is done by setting relationships between tables. A relationship is created by matching data in one of the fields of the table usually a field with the same name in both tables. In most cases, these matching fields Training Division, NIC, New Delhi 31

are the primary key 3 from one table and a foreign key 4 in the other table. For example, employees can be associated with the leaves they have taken by creating a relationship between the Employee table and the Leave table using the Emp_code (Employee Code) field as shown in Figure 16. Primary Key Employee Table Foreign Key Leave Table Figure 16 Entity-Relationship diagram Employee Table s Emp_code Takes Leave Leave Table s Emp_code 3 Primary key consists of one or more fields (columns) whose value or values uniquely identify each record in a table. A primary key cannot allow Null values and is used to relate the table to foreign keys in other tables. 4 Foreign key is one or more table fields (columns) that refer to the primary key field or fields in another table. A foreign key indicates how the tables are related. The data in the foreign key and primary key fields must match, though the field names do not have to be the same. 32 Training Division, NIC, New Delhi

Types of Relationship 1. A one-to-many relationship : It is the most common type of relationship. In a one-to-many relationship, a record in the first table can have many matching records in the second table, but a record in the second table has only one matching record in the first table. 2. A many-to-many relationship In a many-to-many relationship, a record in the first table can have many matching records in the second table, and a record in the second table can have many matching records in the first table. This type of relationship is only possible by defining a third table (called a junction table) whose primary key consists of two fields the foreign keys from both the tables, first and second. A many-to-many relationship is actually defining two one-to-many relationships with a third table. For example, the Leave table and the Training table have a many-to-many relationship that s defined by creating two, one-to-many relationships to the Employee table. 3. A one-to-one relationship In a one-to-one relationship, each record in the first table can have only one matching record in the second table, and each record in the second table can have only one matching record in the first table. This type of relationship is not common, because most of the information related in this way would be in one table. You might use a one-to-one relationship to divide a table with many fields, to isolate part of a table for security reasons, or to store information that applies only to a subset of the main table. E Creating New Relationships Close any tables you have opened since relationships can t be created or modified between open tables. Click Tools>>Relationships. Blank screen will appear. Training Division, NIC, New Delhi 33

Click Relationships>>Show Table. Following Show Table dialog box will appear as shown in Figure 17. Figure 17 Select Employee table. Click Add. Select Leave table. Click Add. Similarly you can add more tables depending upon the requirement. Click Close. Tables selected will appear as shown in Figure 18. 34 Figure 18 Drag the Emp_code of Employee table over Emp_code of Leave table to relate them. Edit Relationships dialog box will appear as shown in Figure 19. Training Division, NIC, New Delhi

Figure 19 Click Create. A line joining the two tables will appear as shown in Figure 20. Figure 20 The above two steps can be repeated for each pair of tables you want to relate. Close the Relationships window. The system will prompt for the Saving of Relationship. Click Yes. Note: If you drag a field that isn t a primary key and doesn t have a unique index to another field that isn t a primary key and doesn t have a unique index, an indeterminate relationship is created. Training Division, NIC, New Delhi 35

E Editing the Existing Relationship Click Tools>>Relationships. Double click on the middle of the relationship line. Edit Relationship dialog box will appear as shown in Figure 21. Figure 21 ö Defining the join type for a relationship between two tables Click the Join Type. button, and then click the desired join type from the Join Properties dialog box as shown in Figure 22. 36 Training Division, NIC, New Delhi

Figure 22 ö ö Click OK. Deleting Relationship Click Tools>>Relationships. Click on the Relationship line to be deleted. Press Delete key. Removing Table from the Relationship Window Click Tools>>Relationships. Click on the table to be deleted. Press Delete key. Training Division, NIC, New Delhi 37

Referential Integrity Referential integrity is a system of rules that Microsoft Access uses to ensure that relationships between records in related tables are valid, and that you don t accidentally delete or change related data. Basic requirement for setting up referential integrity: 1. The matching field from the primary table is a primary key or has a unique index. 2. The related fields have the same data type. 3. Both tables belong to the same Microsoft Access database. When referential integrity is enforced, you must observe the following rules: 1. You can t enter a value in the foreign key field of the related table that doesn t exist in the primary key of the primary table. 2. You can t delete a record from a primary table if matching records exist in a related table. For example, you can t delete an employee record from the Employees table if there are leave details for that employee in the Leave Table. If at all it is required to delete a record in Employee table, one should just delete the corresponding leave details from the Leave table. 3. You can t change a primary key value in the primary table, if that record has related records. Setting Referential Integrity Open the relationship in edit mode as already discussed in Editing the Existing Relationship section. Select the Enforce Referential Integrity check box. If referential integrity is enforced and you break one of the rules with related tables, Microsoft Access displays a message and doesn t allow the change. Restrictions can be overridden against deleting or changing related records and preserving referential integrity by setting the Cascade Update Related Fields 5 and Cascade Delete Related Records 6 check boxes. 5 Changing a primary key value in the primary table automatically updates the matching value in all related records. 6 Deleting a record in the primary table deletes any related records in the related table. 38 Training Division, NIC, New Delhi

q Query A query is logical view of selected data elements from tables as per the specific needs of the user (which is called subschema). Query option is used for the purpose of display, updating or analysis of data. E Simple Query Select Queries tab from the database window. Click on New button as shown in Figure 3 of table design. The dialog box for new query will appear as shown in Figure 23. Figure 23 Select Design View. Click on OK. The Show Table dialog box lets you select the tables/queries/both for creating a query. Select the table Employee. Click on Add. The field list appears next to the Show Table dialog box as shown in Figure 24. Training Division, NIC, New Delhi 39

Figure 24 In Show Table dialog box, click on Close button. Double Click on fields Emp_code, ename, Designation, Salary in the field list. They may appear in the lower part of the screen as shown in Figure 25. Figure 25 Save the query as Employee_query. Select Query>>Run from the menu bar to see the output. Close the Select Query window. Note: From the database window also the query can be run. Click on Queries tab, choose the query as Employee_query and click on Open button. 40 Training Division, NIC, New Delhi

E Performing Calculation in the Query A new field can be created in a query that displays the results of a calculation defined in field cell with an expression. Open the query in Design view. Repeat all the steps as done in previous query. Type an expression in an empty cell in the Field row as shown in Figure 26. In this figure the expression written is DA:[Salary]*0.42 Figure 26 Expression to calculate DA Note: For creating the expression, Expression Builder can be used. Right-click in the Field cell where you have to add the calculated field, and then click Build. Select Query>>Run to see the output. The calculated value for DA, with the field name DA, will be displayed in the output of query. Close the Query window. Training Division, NIC, New Delhi 41

E Using Criteria or Advanced Filters to retrieve certain Records Criteria are restrictions or an advanced filter placed on a query to identify the specific records to work with. For example, instead of viewing all the employee information of your organisation, selected employees can be viewed having Designation SA. To do this, specify the criteria that limits the results to records whose Designation field has the value SA. In a design grid of query, enter an expression in the criteria cell for the field. The expression in the preceding example would be SA as shown in Figure 27. Note : Additional criteria can be entered for the same field or different fields using either the And or the Or operator. For And operator, the expressions are in different cells in the same row. For Or operator, the expressions are in different rows of the design grid. Figure 27 Select Query>>Run. The output contains only those records having Designation equal to SA. 42 Training Division, NIC, New Delhi

E Parameter Queries A parameter query is a query that while running displays its own dialog box prompting you for information, such as criteria for retrieving records or a value you want to insert in a field. You can design the query to prompt you for more than one piece of information; for example, you can design it to prompt you for two dates. Microsoft Access can then retrieve all records that fall between those two dates. In query Design view, drag the fields from the field list to the query design grid. In the Criteria cell for the field you want to use as a parameter, type a prompt enclosed in square brackets as shown in Figure 28. Figure 28 The prompt Type Employee Code will be displayed when you run the query as shown in Figure 29. Figure 29 Enter the value for employee code and click OK. It will display the output having emp_code, name, designation, salary and DA for the corresponding employee code. Training Division, NIC, New Delhi 43

E Action Queries An action query is a query that makes changes to many records in just one operation. The action queries are of four types: delete, update, make-table, and append queries ö Delete Query Delete Query deletes a group of records from one or more tables. With delete queries, always entire records will be deleted, not just selected fields within records. Single delete query is used to delete records from a single table or from multiple tables, if relation has been set between the tables, in a one-to-one relationship or a one-to-many relationship. Select Query>>New>>Design View from Database dialog box. Add tables Employee and click the Close button. Select Query>>Delete Query, from the Menu bar. Drag the asterisk(*) from the field list for the table, from which records are to be deleted, to the query design grid. From appears in the Delete cell under this field. Add field and table to the design grid for which criteria for deleting records has to be specified. Where appears in the Delete cell under this field. In the Criteria cell for the fields, criteria has to be typed as shown in the Figure 30. 44 Training Division, NIC, New Delhi

Figure 30 Note: If Delete Query is used for One-to-many relations, records will be deleted from all the related tables. For example, tables Employee and Leave are having oneto-many relationship (select the Cascade delete related records option while setting the relationship.) In this case, the Delete Query will delete the records from both the tables related, if the Salary is less than 9500. To see a list of the records going to be deleted, click View >>Datasheet view. To return to query Design view, click View >>Design View. Click Query>>Run to delete the records permanently from the tables. Training Division, NIC, New Delhi 45

ö Update Query Change records as a group using an update query Create an update query, selecting the tables or queries that include the records you want to update and the fields you want to use for setting criteria. In query Design view, click the Query>>Update Query. Drag from the field list to the query design grid the fields you want to update or you want to specify criteria for. In the Criteria cell, specify the criteria if necessary. In the Update To cell for the fields you want to update, type the expression or value you want to use to change the fields, as shown in Figure 31. Figure 31 To see a list of the records that will be updated, click View >>Datasheet View. This list won t show the new values. To return to query Design view, click View >> Design View. Click Query>>Run to make the table updated. 46 Training Division, NIC, New Delhi

Update a table based on values in another table Create an update query that contains the table you want to update and the table whose values you want to copy. If the tables aren t already joined, join them on the fields that have related information. For example, if you want to copy data from the Name field of the Employee table to a field in Leave table, join the two tables on the primary key, which in this case is Emp_code. In the Update To cell for the fields you want to update, type an expression with the following syntax: [tablename].[fieldname], where tablename and fieldname are the names of the table and field that contain the data you re copying. For example, if you are copying data from the Name field of the Employee table, you would type [Employee].[Name] in the Update To cell as shown in Figure 32. Figure 32 Click Query>>Run. It will copy the data from Name field of Employee table to the Name field of the Leave table. (To see the updated table, you may see the Leave table in Datasheet view). Training Division, NIC, New Delhi 47

ö Make-table Query Create a query, selecting the tables or queries that contain the records you want to put in the new table. In query Design view, click Query >> Make-Table query. The Make Table dialog box appears. In the Table Name box, enter the name of the table you want to create or replace. For example, to create new table employee_new, type that name in the Table Name box. Click Current Database to put the new table in the currently open database. Or click Another Database if you want to create table in a new database and type the name of the database you want to put the new table in. Type the path if necessary. Click OK. Drag from the field list to the query design grid the fields you want in the new table. In the Criteria cell for the fields that you ve dragged to the grid, type the criteria as shown in Figure 33. Figure 33 48 Training Division, NIC, New Delhi

ö For the preview the new table before you actually create it, click the View>> datasheet view. Return to query Design view by clicking View>>Design View. To create a new table, click Query>>Run. It will copy all the fields shown in Figure 33 and its data to the newly created table employee_new. Append Query This query is used to append records from one table to another table using an append query. Create a query that contains the table whose records you want to append to another table (can be done using Simple Query Wizard option). Open the query created in the above step in design mode. Click Query>>Append Query. The Append dialog box appears as shown in Figure 34. Figure 34 In the Table Name box, enter the name of the table you want to append records to. Click Current Database if the table is in the currently open database. Or click Another Database and type the name of the database where the table is stored. Type the path if necessary. Click OK. Training Division, NIC, New Delhi 49

In Append To option, select the Field name of the table where the data has to be appended and in Criteria cell for appending the field value as shown in Figure 35. Figure 35 If all the fields in both tables have the same names, you can just drag the asterisk (*) to the query design grid. However, if you re working in a database replica, you ll need to add all the fields instead. If the fields you ve selected have the same name in both tables, Microsoft Access automatically fills the matching name in the Append To row. If the fields in the two tables don t have the same name, in the Append To row, enter the names of the fields in the table you re appending to. In the Criteria cell for the fields that you have dragged to the grid, type the criteria on which additions will be made. Click Query>>Run to execute the query. Note : So far, the practice for basics of Queries has been done. For further details, you may continue through the following pages, else go to the Section on Forms on Page 59. 50 Training Division, NIC, New Delhi

E ö More about Queries Cross-tab Query Cross-tab queries let you cross-tabulate data in a row-by-column fashion. The example shown below answers the question Who took how many leaves of what type?. Note : To quickly create Cross-tab query of data in a single table, Crosstab query Wizard can be used. Click New>>Design View>>OK. Click Query>>Cross-tab query. Add table Leave to be worked upon as shown in Figure 36. Figure 36 In the design grid of query, specify which field s values become column headings, which field s values become row headings, and the summary values and how you want to summarize the value (for example, sum, average, count, or otherwise calculate). Steps for creating Cross-tab query are as follows: Choose Row Heading in the Crosstab cell for the field you want to use for row heading. More than one field can be designated, but at least one field must be Group By in its Total Cell as shown in Figure 37. Expressions can also be used to group the value together. Training Division, NIC, New Delhi 51