Lesson 9
Database Solutions Conclusion
When working in Web site development, you should be knowledgeable about all the components of the process.
Whether your interest is on the technical, business, or creative side, you should have some familiarity with what your options are for software purchase and deployment.
You should now be able to:
-
List the functions of databases
- Describe the four basic database models
- Explain the characteristics and protocols of back-end Web databases
- Explain the importance of data modeling techniques
- Describe the functions of security software
- Explain the types and benefits of bundled solutions, giving common examples
In the next module, you will be looking at software planning from the perspective of the different Web models.
Dynamic Access to Databases
Requisite technologies have converged sufficiently to allow dynamic access to databases using Web browsers. The
Web has provided a global infrastructure, a set of standards, and a presentation format, while database technology
has contributed storage techniques, query languages, efficient access to large bodies of highly structured
data, and mechanisms for maintaining the integrity and consistency of data .
Prior to theWeb, Internet access to databases was hampered by low bandwidth, the lack of a standardized interface,
and platform dependencies. The emergence of the Web helped fix the interface and platform
problems, and high-speed connections are helping to fix the bandwidth problem. Yet another problem to be
solved was how to access databases dynamically, avoiding the problem of having to convert database data manually to text suitable for transmission using the hypertext transfer protocol (HTTP). This problem has been solved through the use of programs and scripts that convert relational
data to hypertext markup language (HTML) for transmission over the Web.
Database Design and Theory
Database Supporting Roles
Not every database application is directed toward public
outreach and public access, although the public side often works in conjunction with the private side. This section
briefly discusses types of databases and the support they provide to organizations.
Reference databases support retrieval of literature citations, abstracts, and hard data from vast databases. Most
are made available on a subscription basis. They are seldom used for transaction processing but can be useful
as part of the informational services of an organization.
They are of vital interest to libraries, information agencies, and information research units within organizations,
and they make up an important component in corporate knowledge-management operations, digital libraries, and
data mining.
Back-office databases are part of an internal information system supporting the functioning of the organization.
Some portions of the databases may be made available to Internet users, but they are less often used in
transaction processing. Typically, back-office applications use small or medium capability database management
systems such as Access (Microsoft) and MySQL (MySQL AB).
Front-office databases support organizational functions that reach out to customers, constituents, or clients. They support customer or public information, selling and buying transactions, data warehousing, business intelligence, customer service, banking, securities, and a host of commercial and noncommercial applications. Typical front-office databases include DB2 (IBM), Oracle (Oracle), SQL Server (Microsoft), Informix (IBM), and Sybase (Sybase).
When creating database-driven web applications, you will need to do some of the following tasks:
- Tabular output: Listing query results in an easily readable format is one of the most commonplace tasks you will deal with when building database-driven applications. Understand how to programmatically create these listings.
- Sorting tabular output: Often, query results are ordered in a default fashion, by product name, for example. But what if the user would like to reorder the results using some other criteria, such as price? Provide table-sorting mechanisms that let the user search on any column.
- Subqueries: Even simple data-driven applications often require queries to work with multiple tables, typically using joins.
Many of these operations can also be accomplished with the arguably much more intuitive subquery.
- Cursors: Operating in a fashion similar to an array pointer, a cursor (a feature new to MySQL 5.0) gives you the ability to swiftly navigate database result sets. Use cursors to streamline your code.
- Paged results: Database tables can consist of thousands, even millions, of records. When large result sets are retrieved, it often makes sense to separate these results across several pages and provide the user with a mechanism to navigate back and forth between these pages.