Wednesday 21 December 2016

Reasons to Use Ms Access Database

Is Microsoft Access the best small business database? 
Microsoft Access is a Relational Database Management System (RDBMS), like Oracle & SQL/Server among others.   This RDBMS combines the database engine known as JET, Forms Design, Report Design, Graphics, and Visual Basic for custom program execution. 


Is it the right database development system for your needs?  This discussion will help you identify the pros and cons of using MS Office Access database as your software development system. We also present and discuss typical problems found in non-professionally developed databases - particularly Microsoft Access.
The following list provides answers to the question - why use Microsoft Access for consideration for your company's database development platform:
  • Microsoft Access is available with the Microsoft Office Professional suite of business products therefore no additional database software is required if your company purchases computers with this suite of products already installed.
  • MS Access database is likely to be available and supported for years to come because Microsoft is the premier software company in the world.
  • MS Access is the most widely used desktop database system in the world.
  • You can now put an Access database on the Internet Cloud with no programming changes!  Typical cost is less than $150 per user per month.  Contact us if you need help with the cloud.  Users from multiple cities can be sharing one database in a day. And from laptops in the field too.
  • If database support is important to you then Access may be your best choice since Access has more support and development consultants than any other desktop database system.
  • Access is significantly cheaper to implement and maintain compared to larger database systems such as Oracle or SQL Server.
  • Access can provide a cost benefit since consulting rates are typically lower for Access consultants compared to Oracle or SQL Server consultants.
  • Fairly complex databases can be setup and running in 1/2 the time and cost of other large database systems (the simpler the database the greater the cost advantage).
  • Microsoft Access integrates well with the other members of the Microsoft Office suite of products (Excel, Word, Outlook, etc.).
  • Other software manufacturers are more likely to provide interfaces to MS Access than any other desktop database system.
  • When designed correctly, Access databases can be ported (usually with some difficulty) to SQL Server or Oracle.  This is important if you want to start small or develop a pilot database system and then migrate to the larger database management systems.
  • A Microsoft Access system can be placed on a website for access for remote users.  Simple screens can be developed within Access, Data Access Pages. Or full control and functionality can be implemented using Active Server Page (ASP) programming.  Note that you still have the same simultaneous connection limitations described above.

    This article has been adopted from http://www.blueclaw-db.com/microsoft_access.htm You may access the webpage to see further discussions, including limitations  and comments

    The key thinks is my take include:
    >> Access database is easy to use, and any organization is likely to have at least one person with knowledge of access or one that is willing enough to study the many online resourses.

    There are many forums in which you can ask questions and they will be answered. Examples include Utteraccess.com, allexperts.com, stackoverflow.com, as well as Microsoft support websites.

    Installation, backup and moving the database from one computer to another is as easy as copy--Paste. Other software require installation CDs, multiple licenses, Serial numbers and sometimes complicated installation procedures. wait until your main computer crashes... you have to call a specialist installer, and pay.

Tuesday 20 December 2016

How to Promote Students to next Class in a Database- Ms Access Example

While designing a database for students, you may have come across various templates, which in my opinion are quite lacking in important features. One of these is that students are in one level, and then they graduate, or are promoted to another class.

In my implementation, I'm going to show a sample of how this promotion can be done.

I have a studentClass table which has fields... SchYear, StudentID/ Adm, ClassID, StreamID.

The table indexes are such that one student can only be in one class and year once... Let me explain. StudentID and SchYear are set as unique. Ms access table in design view, click indexes. You will already see the primary key as an index. Then add another index give it any name eg studentClass Select the fields StudentID and SchYear below it. (SchYear wont have an index name) then set the property as unique.

Set index in ms access database

 Back to the key information,

The idea is to create a query that selects students in the current, or previous year who are in form 1, 2,3 and 4, Re-Insert them into the table with the SchYear+1, ClassID+1 and the same Stream. This is done through an Insert/Append query.

To accomplish this you need a parameter... I chose to use YearID... The user selects the year to promote students to. eg. To promote students to Year 2017, There's a combo box which shows SchYear. The user selects 2017 and clicks a button. That button runs the query as described, ..

INSERT INTO StudentClass ( SchYear, StudentID, ClassID, StreamID...)
SELECT StudentID, StreamID From.... WHERE..., Name of the combo box +1 AS SchYear, ClassID +1 AS ClassID....