Vous êtes sur la page 1sur 26

LEARNING OUTCOME 1 1-1) The qualities of a good database system, in my opinion, are listed here; Enabling Controlled Data

Redundancy; A technique called Controlled Redundancy can be applied within the database to use redundant fields in order to speed up reading database access. This very same technique will avoid data redundancy by the use of keys in tables. If I use this technique in my database project (health club membership) then the employee table I have defined a primary key condition for employee number will enable the system not to allow me to enter 2 rows of the same data. Data sharing; Sharing information is one of the main reasons we use databases in the first place. The data stored in the database should be able to be shared among multiple users. In my database project (health club membership) I can make notes about a customer and employee , personal trainer in this case, will access the database to be informed on what the customers situation. Data Security; A good database should be safe and this can be achieved by ensuring that only means of access is through an authorized channel. Data security checks should be carried out when access to sensitive data is attempted. Databases are geared with security tools such as user codes and passwords, therefore different checks are needed for each type of access to every piece of information in the database. Backup and Recovery; A good database system will provide backup and recovery subsystems that are responsible for recovery from hardware and software failures. In my database project, if a failure occurs when Im running my database, my DBMS recovery subsystem reverts back my database to the state which existed prior to the start or it resumes from the point it was interrupted. Portability; A good database allows the data to be accessed from anywhere the user is located without actually having to carry the database physical. Consistency; A good database should generate consistent results, if a user performs the same search three times in a row then he/she should get the same results. Availability; It is important to that data is instantly accessed 365 days a year and 24 hours a day, and this can be achieved through redundancy that involves the location where the data is being stored and how this data can be reached.

1-2) Compatibility Issues; MS Office Access is not supported in all operating systems available

in the market, meaning that anything database created in MS Office Access can only be manipulated in certain operating systems. When we talk about compatibility is also important to point out that different versions of MS Office Access can be totally different from one another, sometimes a database created in a older versions might not be work in a newer versions. I used MS Access 2010 do develop my database project, before anyone use my database they need to use a supported OS otherwise they cant have access to the database. MS Access Platform Compatibility & Versions

Image Source: http://en.wikipedia.org/wiki/Microsoft_Access

End User Issues; The type of people that are going to have access to the database that I created are employees only, and they are proficient with MS Access. Ive created a user friendly database that enables employees to focus on the job at hand rather than on learning to use MS Access. I made it easier to access and manipulate data, and more difficult to cause them to change or delete data unitentionally. Type of users Database Administrator: looks after the performance, integrity and security of a database. Other responsibilities include planning, development and troubleshooting.

Database Architect: is responsible for relational and warehouse database design, modeling and architecting. Database Analyst: is in charge of developing and implementing of all management information systems, as well as the maintenance and resolution of any system problems. 1-3) Advantages and disadvantages of using MS Office for my database project Advantages Fast and easy; MS Office 2010 comes with lots of templates to choose from, I can just select one template that fits my needs and start developing my application right away without having to do any customization. Also, I can build my database using modular components and add prebuilt Access components for common tasks to my database in a few simple clicks. Create forms and reports; MS Office 2010 has tools that easily help me to create professional, informative forms and reports, I can use a technique called conditional formatting that supports data bars and manage my conditional formatting rules from a single intuitive view. Integration & Collaboration; I can easily share my database with Microsoft Sharepoint Services, not only I can my MS Access database to a Sharepoint website but I can also publish my database to a Sharepoint website. The employees can can open Web forms and reports via a browser and their changes are automatically synchronized. Gathering information; I can create forms using HTML to gather information for my database. I can send the form to employees via email and user their responses to update my Access database table to erase the need to retype any unnecessary information. Fied types; MS Office 2010 enables me to create field types such as attachments and multivalue fields. I can attach images and documents to records in my database. By using multi value fields, I can select more than one value in each cell. Implementation; Microsoft Access is much cheaper to implement and maintain if we compare to larger database systems such as Oracle or SQL Server.

Disadvantages

Multiple Users; When more than 20 employees try to gain access to my database the performance and response time may start to suffer. Two employees may try to two to simultaneously update the same record or delete what another wants to edit. Multiple Windows Operating Systems; When employees different versions of Windows Operating Systems try to access the database corruption issues might arise. It is recommended that all employees use the latest version of MS Access but thats not always possible. Development Limitations; Im not very good with MS Access and I find it a bit overwhelming when using it, and the main reason is that to maximize the potential of Access the a good understanding of relational database design along with VBA coding is highly recommended. Like any development tool, database performance and report quality really relies on the expertise and skills of the developer. Internet Limitations; MS Access cannot be used with applications that are web based since its forms and reports only work in Windows environment. My database does not contain a the server features that are available in Oracle or other ODBC compliant databases. Access is optimized for Windows, not the web. Deployment Issues; My database can only be accessed in a system with MS Access itself, similar issues apply with deploying the runtime version of Access. Updating Access databases when updates are released is also can also be a challenge.

LO2 Categories table Field name categoryID Field data type AutoNumber Field data size Long Integer Type of field Primary Key

CategoryName Description Customers table Field name CustomerID FistName LastName Address Borough PostalCode Country Phone Number Employees Table Field name EmployeeID FirstName LastName Address Borough PostalCode HomePhone Birthdate Title DateHired

Text Memo

15

None Key None Key

Field data type Text Text Text Text Text Text Text Text

Field data size 5 30 50 255 20 20 50 30

Type of field Primary Key None Key None Key None Key None Key None Key None Key None Key

Field data type AutoNumber Text Text Text Text Text Text Date/Time Text Date/Time

Field data size Long Integer 30 50 80 20 10 15 m/d/yy 8 m/d/yy

Type of field Primary Key None Key None Key None Key None Key None Key None Key None Key None Key None Key

Order Details Table Field name OrderID ProductID UnitPrice Quantity Discount Field data type Number Number Currency Number Number Long Integer Single Field data size Long Integer Long Integer Type of field Primary Key None Key None Key None Key None Key

Orders Table Field name OrderID CustomerID AccountRep OrderDate ShippedBy ShipName Field data type Number Text Number Date/Time Number Text Field data size Long Integer 5 Long Integer m/d/yy Long Integer 20 Type of field Primary Key None Key None Key None Key None Key None Key

Products Table Field name ProductID ProductName SupplierID CategoryID QuantityPerUnit Field data type AutoNumber Text Number Number Text Field data size Long Integer 20 Long Integer Long Integer 10 Type of field Primary Key None Key None Key None Key None Key

UnitPrice UnitInStock UnitsOnOrder ReOrderLevel Discontinued

Currency Number Number Number Yes/No Integer Integer Integer

None Key None Key None Key None Key None Key

Screenshots of my database

2-3) Pros and cons of Microsoft Access 2010 Pros; Microsoft Access 2010 is a powerful relational database application that gives me all the tools that I need run to reliably retrieve, manipulate and report data. By embedding rules that must be followed at the time of the entry, a appropriate and reliable end product is almost guaranteed. In my database project (City Health Club) I have created rules that some fields are must always be numbers. Microsoft Access 2010 has some good features (forms, queries, reports) integrated, these features are easy to manipulate and they can be implemented using wizards to speed up the process. Since MS Access is a relational database I can link individual tables by means of common fields. In my database project tables like Customers and Orders are linked, each table is maintained and updated separately, but joined into a new table for retrieval of orders made. Cons; While developing my database it occurred to me that Access security is somewhat limited. Specifically, its "primitives" are VERY primitive. It takes a lot of coding to do anything really good with security. Also, Microsoft Access 2007 its too dependent on SharePoint server for full feature set, that could be a issue if I want to share my database on the internet. If I want to store large amounts of data then I can face so difficulties since all the data of my database is stored in a single file and that has its limitations. Developing my database project using MS Office Access; I started by creating six tables (Categories, Customers, Employees, Order Details and Products), each table contains information about single entities, and the data in the tables are organized into rows and columns. In the Products table for example, each row defines a single product. While I was developing a I had to think of the tables as entities as well as think how the tables and other database elements represent the entities (customers, employees, etc.) managed by my database and how the entities are linked to one another. After creating the tables I opened the tables in Datasheet view, datasheet view and a spreadsheet are very similar, but a datasheet is a very different type of object. In the datasheet view the tables are divided into horizontal rows and vertical columns of data. Each row defines a single entity, meanwhile each column represents the type of information associated with the entity. For example, the top row in my Customers table contains data describing the customer called Terry Adams, it includes her address and postal code. Each bit of information describing Terry Adams is a field (CustomerID, FirstName, LastName, Address, etc ). Records are made of fields, also records are combined to build tables. Each field in an table come with many properties that give identity to the type of data contained

within the field and how Access should handle the fields data. The name of the field and the type of data in the field are included in the properties mentioned above. A field can include other properties as well. For example, the postal code fields size tells Access the maximum number of characters allowed for the post code. I created queries to extract specific information from my database. A query allows users to select and define a group of records that fulfill a certain condition within my database. The forms and reports in my database are based on queries that filter or sort data before it can be viewed. For example, a user can tell my database to show all the customers that bought Amino Acids in the past 3 months and display it sorted by customer name. The query will combined the products table and customers table, using the CustomerID as a link between tables. Next, it will retrieve the customer's name and any other data the user wants to see. Now, all Access have to do is filter the records, and the query will sort the resulting records by the customers name, and then the resulting records will be displayed as a datasheet. After users run queries, the resulting records can be used in a form that will be displayed on screen or printed on a report and user access is only limited to the data that meets the criteria in the returned records. I created data-entry forms in my database since it is a quick way of entering data into my database. Data-entry and display forms gives users a more structured view of the data that what a datasheet provides. From the structured view, users can add , change or delete database records. In my opinion, inserting data by means of data-entry forms in the most common way to get data into a database table. Moreover, most users prefer to enter data information into dataentry forms other than into Datasheet view since forms look more reminds of paper documents and are more visually appealing. I also created reports, they present my data in a printed format. Access supports a wide variety of different type of reports. A report can list all records given in a table or may just contain the records meeting certain criteria. In my database there is a report for all Customers orders, I did that by basing the report on a query that selected only the records that were needed for the report.

LO3 3-1) Normalization Inefficient design table for a database

Author1 Dan Brown

Author2 Kevin Smith

Title The Conspirati on

ISBN 59493494 39

Price 19.99

Customer Alice Patrick

Address 63 Fordham Rd, Colindale, Harrow NW4 1BB 70 Cloch Rd, Kendal, Ealing NW1 1BS 57 Golf Road, Forrest Green, Lambeth NW2 3RD 57 Golf Road, Bark Road, Camden NW2 3RD 17 Shire Oak Road,Ba rnet,Cam den NW4 2FD 22 Dover Road, Burnt Owk, Brent NW3 3SD

Purchase Data 22/01/ 2010

Tom Barnett

Lilly Smith

The Diamond Queen

49439329 20

14.00

Kristie Jones

10/01/ 2012

Lolla Pascal

Charlotte Jones

The Kane Chronicles

49439294 49

12.99

Danny Jones

04/03/ 2011

Tony James

The Hunger Games

49438294 80

17.99

Danny Jones

04/03/ 2011

Dan Brown

Kevin Smith

Black Dawn

49448338 29

7.99

Stephen Williams

29/10/ 2011

Lolla Pascal

Charlotte Jones

The Kane Chronicles

49439294 49

12.99

Carl Thomas

12/10/ 2011

First Normal Form In order to be a considered a First Normal Form the database has to fulfil three requirements which are; 1. All columns cannot contain the same kind of data

2. All columns should only contain a single value 3. A primary key should be assigned to uniquely identify each row Tile
The Conspiration The Queen The Games Diamond

ISBN
5949349439 4943932920

Price 19.99 14.00 17.99 7.99 12.99

Customer
Alice Patrick Kristie Jones

Purchase date
22/01/2010 10/01/2012

Hunger

4943829480 4944833829

Danny Jones Stephen Williams Danny Jones

04/03/2011 29/10/2011 04/03/2011

Black Dawn The Chronicles Kane

4943929449

The new authors table The Authors table is small and simple, it just lists the ISBN along with the author's name.
ISBN 5949349439 5949349439 4943932920 4943932920 4943929449 4943929449 4943829480 Author Dan Brown Kevin Smith Tom Barnett Lilly Smith Lolla Pascal Charlotte Jones Tony James

Second Normal Form The duplicate data (redundancy) across multiple columns is dealt with in the First Normal Form, and the Second Normal Form is going to deal with redundancy across multiple rows.
ISBN 5949349439 4943932920 Title The Conspiration The Diamond Queen Price 19.99 14.00

4943929449 4943829480 4944833829

The Kane Chronicles The Hunger Games The Kane Chronicles

12.99 17.99 12.99

The Customers table Looking at the customers table we can see that there is still more normalization to do since Danny Jones details are still duplicated
ISBN 5949349439 4943932920 4943929449 4943829480 4944833829 4943929449 Customer Alice Patrick Kristie Jones Danny Jones Danny Jones Stephen Williams Carl Thomas Purchase data 22/01/2010 10/01/2012 04/03/2011 04/03/2011 29/10/2011 12/10/2011

The new customers table (table 6)


Customer number 1 2 3 4 5 Customer Alice Patrick Kristie Jones Danny Jones Stephen Williams Carl Thomas Address 63 Fordham Rd 70 Cloch Rd 57 Golf Road 17 Shire Road Oak City Colindale Kendal Forrest Green Barnet Burnt Oak Postcode NW4 1BB NW1 1BS NW2 3RD NW4 2FD NW3 3SD

22 Dover Road

The new purchases table (table 7)


Customer number 1 2 3 ISBN 5949349439 4943932920 4943929449 Date of purchase 22/01/2010 10/01/2012 04/03/2011

4 5

4943829480 4944833829

04/03/2011 29/10/2011

Third Normal Form Even though I have a database that complies to both the First and Second Normal Forms, I if I want to be very strict with my database, I can ensure that it adheres to the Third Normal Form, which requires data that is not directly dependent on the primary key but that is dependent on another value in the table should also be moved into separate tables, according to the dependence. It could argue that, in table 6, the City and Postcode are not directly related to each customer since many other people can have the same details in their addresses as well but they are related to each because the street Address relies heavily on what city they live in.

Table for customers (table 8)


Customer number 1 2 3 4 5 Customer Alice Patrick Kristie Jones Danny Jones Stephen Williams Carl Thomas Address 63 Fordham Rd 70 Cloch Rd 57 Golf Road 17 Shire Oak Road 22 Dover Road Postcode NW4 1BB NW1 1BS NW2 3RD NW4 2FD NW3 3SD

Postcode table (table 9) Postcode


NW4 1BB NW1 1BS NW2 3RD NW4 2FD NW3 3SD

CityID 23232 32332 23243 21233 23245

Cities table (table 10) CityID 23232 32332 23243 21233 23245 Borough Tables ( table 11) BoroughID 12 34 21 15 43 Name Horrow Ealing Lambeth Camden Brent Abbreviation HR EL LH CD BT Name Colindale Kendal Forest Green Barnet Burn Oak BoroughID 12 34 21 15 43

How would you the set of four new tables (table 8 to 11) would be better instead of the single Table 6? by searching the postcode in Table 8, then we can find the matching CityID in Table 9. Given this information, we could then look up the city Name in Table 10 and then also find the BoroughID, which you could use in Table 9-11 to look up the Boroughs Name. Using Third Normal Form in this way may seem like exaggerated but it can have advantages. For example, tabe 11 makes it has been possible to include both a Boroughs name and its twoletter abbreviation. It could also contain other relevant details, if desired.

3-2 & 3-3) Attached to the CD

LO4) 4-1) This is how I would give my presentation; 1. Analyze the room where I will be giving my presentation by confirming that the audio-visual equipment I require will be in the room and make sure that Im have a backup of my powerpoint presentation. 2. Distribute handouts to the audience; handouts They allow me to cut down on the amount of material I have to cover in my presentation and so not commit information overload. 3. Greet and introduce myself to the audience and briefly explain what I will be covering. 4.I would start my presentation by using the demo database as an example to section provides a practical guide to building a system of tables within a database that conforms to the rules of

data normalization. 5. After I've explained how to organize the data into a system of tables, I will show my audience how to design those tables for maximum efficiency. 6. Show my audience how to use queries to retrieve data from tables and provide a brief introduction to Structured Query Language (SQL) which Access uses to manipulate data. 7. I will talk about the principles of designing a user interface and some of the creative tools that can used to design a great looking application. 8. Conduct a Q&A session and try an answer as many questions as possible in the time that I have. 9. Thank everyone for their attention, tell them the presentation is available in printed form. inform the audience that I will be available for personal consultation.

4-2) Structure of my database Tables 1. CUSTOMERS 2. EMPLOYEES 3.CATEGORIES 4.ORDER DETAILS 5.ORDERS 6. PRODUCTS Forms CATEGORIES CUSTOMERS Sub Forms PRODUCTS Reports

CUSTOMERS PRODUCTS ORDERS Sub Reports ORDERS

I used the structure above because I want to keep track important details, I planned and designed a database that can store the related data. This data is six separate tables so I can distinguish between these six sets of information. I also need to planned how I will be using the information stored in the database and what kind of reports I will need to run. Planning is an important phase since it ensures that no data will be missing or redundant, and it saves time on future modifications my database. I have two type of stored data and which data that can be calculated. Stored data remains the same until a employee changes it but calculated data changes in response to other database updates. The price of an individual product is typically a stored value; that is, it remains the same until employee changes it. But the total value of a product held in inventory changes when the price does: if the price goes up, the value in inventory increases, and vice versa. The total inventory value, which depends on the price, is an example of data that should be calculated by the database rather than entered by an employee. My database contains the day-to-day records and it is kept current, the information stored in it can be found quickly. I have created to create forms that are available to be used. A form is an organized and formatted view of some or all of the fields from one or more tables. The forms that I created will work interactively with the tables in my database. Employeescan use controls in the form to enter new information, to edit or remove existing information, or to locate information. 4-3)

User Documentation OVERVIEW To access a City Health Club database, its compulsory to use Microsoft Access 2007 or a later version. Steps to access the database 1. Make sure that the computer has MS Office Access 2. Open MS Office Access or double click on the database file (CityHealthClub) 3. Once the database is open forms can be created, reports can be made and the database itself can be altered. Database Tables There a six tables in the database namely Customers, Categories, Employees, Order Details, Orders and Products; the field properties for each table were set according to the database specifications. These fields properties can be added or changed. Relationship between tables can also be established.

How to add or change field names and properties in a given table; 1. Double click on the table and then change from datasheet sheet view to design view. This set is a must since field properties can only set on the design view. There are two ways of change views. (1) Click on the view icon under the file option or (2) right click on the table. 2. On the design view, fields can be added and properties for fields can be set. The field properties are determined by data type. There are the field names for each table on the database
Categories Table Number of Fields: 3 Primary Key: CategoryID

Customers Table Number of Fields: 8 Primary Key: CustomerID Employees Table Number of Fields: 10 Primary Key: EmployeeID Order Details Table Number of Fields: 5 Primary Key: OrderID Orders Table Number of Fields: 6 Primary Key: OrderID Products Table Number of Fields: 10 Primary Key: ProductID

FORMS There are three forms in the database namely Categories, Customers Records and Products subform.

New forms can be added and the existing forms can be deleted or customized. To create forms go to the create tab and the select forms wizard and to delete forms select the form that should be deleted and then left click and select the delete option. To customize forms select the chosen form and go to design view. At the design view there is a design tab with all components needed to change the form. There are plenty components that can enhance the form. Its possible to navigate through the forms in the database. There is a navigation menu at the bottom of the Form View. Records can also can be added by clicking on the New record at the same navigation menu. REPORTS There are four reports in the database.

1. To create a report go to the create tab and the select report wizard.

2. After selecting report wizard window opens, just select the table related to the report that is going to be created and choose the fields that are going to be in the report.

3.Then you get to select any grouping levels, this step is optional.

4. At this point you can just complete your report by clicking the finish button, but if you want to carry on and ad more options click next. 5. If you to carry on then next section is to choose how you want to sort your report, you can sort your form to up to four fields.

6. The next step is to select the layout of your form, there a three options available for the layout and two for the orientation.

7. The last step is to pick a title for the report as well as preview it or change the design of your report after creating it.

Screenshots (TABLES)

CUSTOMERS

CATEGORIES

EMPLOYEES

ORDERS DETAILS

ORDER

PRODUCTS

Screenshots (FORMS) CUSTOMERS

CATEGORIES

PRODUCTS SUBFORM

Screenshots (REPORTS) SALES BY CATEGORY SUB-REPORT

CUSTOMER ORDERS

SALES BY CATEGORIES

ALPHABETIC LIST OF PRODUCTS

Vous aimerez peut-être aussi