April 2002
Intermediate to advanced
442 pages
16h 37m
English
What you have seen so far will take you a long
way. If you want to understand what is going on in more detail,
understand proper error handling, or work with binary data, however,
we need to drop down a level and look at the API in a practical
example. To these ends, we will look to an API that provides callers
with access to delayed stock quotes stored in a MySQL database. The
application leverages a single MySQL table, Stock,
with the following schema:
CREATE TABLE Stock (
symbol CHAR(5) NOT NULL PRIMARY KEY,
openPrice REAL NOT NULL,
currPrice REAL NOT NULL,
high52 REAL NOT NULL,
low52 REAL NOT NULL
);Our library needs two basic functions:
void assign_stock(Stock *stock);
Assigns the values in the Stock structure to the
database
Stock *get_stock(char *symbol);
Retrieves the Stock structure for the specified
stock
These functions naturally depend on a struct that mirrors the database schema for the stock quotes.
Read now
Unlock full access