Back-end database
Encyclopedia
A back-end database is a database
that is accessed by users indirectly through an external application
rather than by application programming stored within the database itself or by low level manipulation of the data (e.g. through SQL
commands).
A back-end database stores data but does not include end-user
application elements such as stored queries, forms, macros or reports.
.
The developer must decide whether to include the application programming with the data in a single database, or whether to separate them into two database files, according to the client–server model.
For simple database applications, it is common for all programming to be stored with the data. This results in a single file and is easier to develop at the expense of scalability
and concurrency
.
For more advanced database applications it is common to split the data and the programming parts in to a front-end database and a back-end database where the front-end holds all the application programming. This has advantages in terms of scalability, performance and concurrency but requires greater effort on the part of the developer. In the long term it may be easier to maintain and upgrade as new versions of the front-end can be deployed independently of the back-end database. The front and back-end databases do not always have to be of the same types. For example, it is possible to use a Microsoft Access front-end with a Microsoft SQL Server
back-end.
It is common for developers to find that an existing database application has grown in complexity or usage to the point where it would have been better to have used separate front and back-end databases. Microsoft Access provides a Database Splitter Wizard to ease the process of splitting Access databases.
Database
A database is an organized collection of data for one or more purposes, usually in digital form. The data are typically organized to model relevant aspects of reality , in a way that supports processes requiring this information...
that is accessed by users indirectly through an external application
Application software
Application software, also known as an application or an "app", is computer software designed to help the user to perform specific tasks. Examples include enterprise software, accounting software, office suites, graphics software and media players. Many application programs deal principally with...
rather than by application programming stored within the database itself or by low level manipulation of the data (e.g. through SQL
SQL
SQL is a programming language designed for managing data in relational database management systems ....
commands).
A back-end database stores data but does not include end-user
End-user
Economics and commerce define an end user as the person who uses a product. The end user or consumer may differ from the person who purchases the product...
application elements such as stored queries, forms, macros or reports.
Small Database Systems
The term back-end database is most widely used among developers using small database programming systems which can contain the end-user application programming within the database as a single item. The most common of these is Microsoft AccessMicrosoft Access
Microsoft Office Access, previously known as Microsoft Access, is a relational database management system from Microsoft that combines the relational Microsoft Jet Database Engine with a graphical user interface and software-development tools. It is a member of the Microsoft Office suite of...
.
The developer must decide whether to include the application programming with the data in a single database, or whether to separate them into two database files, according to the client–server model.
For simple database applications, it is common for all programming to be stored with the data. This results in a single file and is easier to develop at the expense of scalability
Scalability
In electronics scalability is the ability of a system, network, or process, to handle growing amount of work in a graceful manner or its ability to be enlarged to accommodate that growth...
and concurrency
Concurrency (computer science)
In computer science, concurrency is a property of systems in which several computations are executing simultaneously, and potentially interacting with each other...
.
For more advanced database applications it is common to split the data and the programming parts in to a front-end database and a back-end database where the front-end holds all the application programming. This has advantages in terms of scalability, performance and concurrency but requires greater effort on the part of the developer. In the long term it may be easier to maintain and upgrade as new versions of the front-end can be deployed independently of the back-end database. The front and back-end databases do not always have to be of the same types. For example, it is possible to use a Microsoft Access front-end with a Microsoft SQL Server
Microsoft SQL Server
Microsoft SQL Server is a relational database server, developed by Microsoft: It is a software product whose primary function is to store and retrieve data as requested by other software applications, be it those on the same computer or those running on another computer across a network...
back-end.
It is common for developers to find that an existing database application has grown in complexity or usage to the point where it would have been better to have used separate front and back-end databases. Microsoft Access provides a Database Splitter Wizard to ease the process of splitting Access databases.