ThePlace

Home ] Search ] Resources ] Site Map ] Contact Me ]
Dave's Information Technology Resource

Up ]

What are Databases? ] Relational Databases ] Data Modeling ] Designing and Implementing Databases ] [ Creating Database Applications ]

--- Creating Database Applications ---

A General Strategy

A database application is a set of software tools that enable you to access, store, and manage data in a database.  There are a number of strategies for creating database applications:

bullet

 Commercial database products (e.g., Microsoft Access)

bullet

 Software programming (e.g., C++, Visual Basic)

bullet

 Integration with other products (e.g., Cold Fusion)

The general strategy for developing database applications includes:

bullet

Collect the requirements for applications.

bullet

Develop a design for the software and the database.

bullet

 Implement the database.

bullet

Develop the interface (forms, windows, etc.).Write the code to link the database and interface.

 

Developing Microsoft Access Applications

For database applications such as Microsoft Access, the general strategy for developing applications follows the tab sequence found in the Access program:

bullet

 Tables – assemble tables, set up relationships between the tables.

bullet

 Queries – build a set of queries for the various ways that data will be used.

bullet

 Forms – build forms to accomplish the various functions to be performed by the program.

bullet

 Reports – design reports for data presentation.

bullet

 Macros – assemble a set of steps (e.g., run a query, generate a report) into a set of programmed steps; generally used for repetitive tasks.

bullet

 Modules – create code that can be used by forms to manage data (e.g., select, delete, update), present the data, or work with the data.

 

Developing Programmed (Client/Server) Applications

Programmed applications require that you have an understanding of the database and the programming environment.  Furthermore, you must understand how the programming environment interfaces to the database.  This is often accomplished through tools provided by the operating system.  In the Windows 9X and NT environments there are mechanisms such as ODBC (Open DataBase Connectivity) and ActiveX Data Objects (ADO) that can be used to interface software programs to databases.

The following illustrates the general process that programmed applications use to access databases:

 

Web Databases

Web databases are dynamic, high volume repositories of information that can be accessed from the World Wide Web.  In the beginning, World Wide Web pages were static information. When information needed to be changed, the page was changed. Furthermore, if there were lots of information to be distributed, each piece of information had to be placed on a web page and stored on a web server.

Examples of Web Databases

Web databases are becoming very common as a business tool. Imagine a web site that sells books. In order to be useful, the site needs to let visitors know what books are available. We can do this a couple of ways:

bullet

 List all the books we have on a single page.

bullet

 Provide a page for every book with a brief synopsis and sales information (how soon is it available?).

If we only have a few books, say a couple of dozen or so, then a page for each book is reasonable. On top of that, it would be easy to make changes such as new prices or the fact that a certain book is a best seller. Unfortunately, we wouldn't be too successful if our online bookstore only sold a few dozen books. In reality, we need to sell thousands of books! Amazon.Com and Borders Books are popular examples of online bookstores.

This is where a web database comes in. With a web database we can list and track thousands of books. We can even support visitors to our site by keeping track of which books they want to buy, their total bill, and the shipping status of the books they order.

 

This is just one example of a web database application. There are many others:

bullet

 Search Engines - Many people use web search engines to find web pages on the Internet. Search engines are based on databases that keep track of content and web page locations. Examples include www.lycos.com, and www.altavisita.com.

bullet

 Help Systems - Many companies offer online services to support their products. Databases are used to organize and manage the information. Microsoft provides an extensive database to support operating system, developer, and end user products.

 Internet Commerce - One of the fastest growing areas on the Internet. Internet commerce (the ability to buy and sell on the web) is based on the use of databases to manage products, conduct product ordering, and track invoicing. Examples of this include the bookstores mentioned earlier and other services such as CD-Now.

How do Web Databases Work?

Web databases are very similar to network databases in that access to data is shared by many users, often remotely located from the server. In other words, users can be anywhere on the Internet and access a databases. Furthermore, the user interface to the web databases is via a web browser.

In order to understand web databases, we need to be aware of a number of players:

bullet

 Web browser - a computer program, running on an Internet client computer (e.g., Netscape Navigator or Microsoft Internet Explorer); it is capable of displaying HTML-encoded files and conducting data transactions via forms.

bullet

 Web server - a computer program, running on an Internet server computer that can respond to web browser requests for web pages.

bullet

 Database interface - a program or script mechanism that allows a web server to access a database. This interface is usually in the form of server-side code or scripts that are executed when a web page is requested. The script on the web page is responsible for accessing the database.

bullet

 Database manager - a program, running on an Internet server (or closely connected to that server) that stores and manages database content.

bullet

 Database - a repository of data.

 There are a number of different technologies that are used to establish and operate web databases, but most of them share a common set of operational features. The following is a simplified version of a how a web database operates:

  1. The client web browser requests a web page that is a "front end" to a web database.

  2.  The web server returns the page to the web browser.

  3. The user enters information into the form of the returned page and submits it back to the web server calling a subsequent page to process the submitted information.

  4. The subsequent page is located and processed by the web server as follows:

bullet

Normal HTML (HyperText Markup Language) is sent back to the client.

bullet

Web server processes the script.

bullet

Database specific script elements are submitted to the database interface.

bullet

The database interface, database manager, and database process the script.

bullet

The result of the processing (data and or status) is returned to the web server. The data is formatted as HTML output (with tags for presentation on a web browser).

bullet

The web server sends the HTML-formatted data to the web browser.

  1. The web browser presents the output.

Creating Web Databases

Web databases come in many shapes and sizes. The complexity can range from:

bullet

 A desktop computer running a low-end web server accessing a desktop database (e.g., Microsoft Access).

bullet

 A web server accessing a database on the same machine for a limited database application.

bullet

 A web server accessing multiple databases on the same machine.

bullet

 A web server accessing a database running on another machine.

bullet

 Multiple databases running on multiple machines connected to multiple web servers.

 

As you can imagine, as the complexity increases (connecting multiple machines, web servers, and databases), so does the power to store and deliver complex sets of information to thousands, even millions of users.

 

There are many factors that will affect how a web database is implemented;

bullet

 Platform (Intel, Sun, Silicon Graphics, etc.)

bullet

 Operating system (Windows 95/98, Windows NT, UNIX, Macintosh, etc.)

bullet

 Web server (Apache, Internet Information Server, Netscape, etc.).

bullet

 Database manager (desktop such as Microsoft Access or FoxPro to Oracle, Sybase, and SQL Server).

bullet

 Database interface (Perl, Java, LiveWire, Active Server Pages, Cold Fusion).

 The nature of the application (data complexity, number of transactions, number of users, etc.).

 

Some of these factors may be controlled by your existing system, that is the platform, operating system, and web server that you already have. It may also depend on the existence and nature of a current database (if there is one). In addition, there are always evolving and emerging technologies and new tools to consider when setting up a web database.

 

Home ] Up ] Computer Architecture ] Programming Bootcamp ] Visual BasicS ] Web Basics ] Web Multimedia ] Web Programming ] Advanced Web Topics ] Developing Web Sites ] XML Technology ] Web Glossary ]

Copyright © 1999 - 2005 
ThePlace - Written and Sponsored by Dave Hillman