IBM developerWorks: Integrating database access into Linux applications; Building a MySQL-backed Web siteFeb 26, 2001, 19:10 (1 Talkback[s])
(Other stories by Alex Roetter)
[ Thanks to Shailendra for this link. ]
"This article describes MySQL, a useful tool for developing e-commerce and other complicated, dynamic Web sites that make use of third-party databases. MySQL is a fast, multi-threaded, and fully functional SQL server. In addition to describing the basic architecture of the MySQL system, this article offers simple examples in both Tcl and C++ that can start you down the path to developing database-aware Web applications."
"Integrating databases into Linux applications can be easy, using both scripting languages and compiled system languages such as C. A freely available (released under the Gnu Public License) database known as MySQL provides a comprehensive set of SQL functionality, and easily integrates into applications. MySQL is fast, multi-threaded, and supports the ANSI and ODBC SQL standards. With the addition of third-party software, MySQL supports transaction-safe tables for transaction-processing applications."
"MySQL APIs are available for a variety of languages, including almost all languages used in practice to write the back end of a Web site. Using these APIs, we can build a MySQL client controlled by the Web server."
"The APIs (for database access) work on a connection-based model. The first thing a client must do is open a connection to the MySQL server. This includes properly authenticating the connection with a username and password recognized by the server. After establishing a connection, the server selects the particular database with which to work. Upon establishing this initialization, the client application (in our case a server-side CGI script) is free to interact with the database in one of two ways: It can run general SQL commands, including adding and deleting tables as well as adding records to them; or, it can run queries on the database which returns results. Queries generate a list of records that match the query, which the client can then access record by record until either all of the records have been viewed or the client cancels the pending record retrieval. Once the script completes working with the database, the connection to the server is closed."