As web applications have become more and more complicated, database development has become increasingly important.
Here at e-volve, we have many years of experience in creating large scale Microsoft SQL databases. All of our internal systems are reliant on our hosted SQL server, and maintenance and development of the databases is an ongoing task.
As the use of large scale databases has become more popular, the costs incurred in the hosting and support have decreased to what is now a relatively low level. This means that even small scale websites can utilise the functionality and security of a hosted database.
Types of database
There are various options available to a developer when making a decision on what type of database is required:
- Microsoft Access This is a low level database which is part of the MS Office suite. The database is developed on a local machine before being uploaded to a host. Should any changes be required to the database, the website must be stopped, and the database downloaded. MS Access databases were popular in the late 90s but they are not particularly scalable and liable to corruption. Generally this platform is no longer recommended.
- Microsoft SQL Server This is e-volve's preferred choice of relational database. The database is hosted on a secure server, and many options are available to the developer. Costs for this service vary, but are relatively inexpensive. Security and scalability are a huge advantage on this platform.
- MySQL This is an open source (the source code is available under the GNU General Public Licence) platform which is owned and supported by MySQL DB (part of the Oracle Corporation). It supports relational, multi-access databases all for a relatively small cost (generally the cost is included in the package price of a particular web host).
- Other database variants are available, but these are generally not used in web application development.
Why do we need a database?
If your web application requires many pages (maybe you have a product range with many hundreds of lines), then creating a single html page for each is time consuming and extremely restrictive. Any small change in this case can result in many hours of work. What a database allows us to do is to create one html page, and then we populate that page with dynamic data pulled from the database, based on a set of query parameters. Hence we can make simple changes quickly and easily.
Databases also allow us to integrate content management systems (CMS) into our web applications. Through these, we can change the imagery and page copy which exists around the website. We can also create promotions and offers, add/edit/update products, monitor customers and sales, and deal with enquiries and usage statistics.
MS SQL (and in some cases MySQL) also allows us to use stored procedures (blocks of code that are contained within the database which execute commands against the particular database), triggers (event based commands), relationships (a relationship is the direct link between 2 tables, and is vitally important in holding the integrity of the database, for example, it means we cannot easily delete a product if the product is linked to an order), user privileges (we may only want some applications to read from the database, whilst others can update the database) and batch job tasks (we can perform tasks on the database at certain times of the day or night).
By utilising the facilities on the MS SQL Server, we can essentially split our application into multiple layers, all of which become much easier to manage.
Here at e-volve, we have developed several scripts which generate new and complex databases dynamically. This includes all tables, stored procedures, views, and triggers. The scripts are entirely based on our experience developing systems over the last 10 years. Hence, we can get a new database up and running in a relatively short space of time (although there will be work involved adapting our standard database to your business needs).
If you would like to speak to someone regarding database development, please give us a call on 01670 501 599 and we will be more than happy to help.