North starts with an introduction to Windows programming concepts and then discusses prevalent database architectures in the corporate environment. He quickly moves into the core topic of multidatabase programming, covering issues such as interoperability, gateways and routers, and distributed objects.
This how-to book reviews tools, explaining servers and database engines in detail, including Microsoft SQL Server, Watcom SQL, Quadbase SQL, R:BASE SQL, Raima's Database Server, Gupta SQLBase, and Integra VDB. The author selected these software packages because they all offer a SQL programming interface for Windows client applications. Nevertheless, the omission of products such as Oracle is surprising. The product descriptions are detailed, down to command strings for setting up databases, and instructions for using the DBMS software.
Open Database Connectivity (ODBC) is a major topic, and North gives it a lengthy chapter. It's a good introduction if you haven't worked with ODBC; even if you have, it's a good refresher course and reference. Qelib also gets an entire chapter. As with the OBDC chapter, plenty of reference tables and tips illustrate how to use Qelib. The other part of the client/server equation is choosing data access and data presentation tools. The author covers such tools as Microsoft Excel and Word, Lotus 1-2-3, Crystal Reports, and Gupta Quest. The chapter's comprehensive tables let you compare each tool's functions, features, and commands.
Moving from data access and presentation tools, the author explains developer-oriented tools, such as Asymetrix InfoModeler, AppWare, SQLView, and ProtoGen+, and how they help you design database applications. The next topic is client/server toolkits. The author discusses Powersoft's PowerBuilder, Gupta SQLWindows, and ObjectView, and points out that they can help integrate data from diverse sources.
You can use one category of software for standalone databases or as the client for larger databases. The two products that exemplify this category are Microsoft's Access and FoxPro. North points out some interesting benefits, including prototyping on a desktop and then moving the server component to a large DBMS. Developing client/server applications with these tools can reduce the amount of code you have to write. In a logical progression, the author then proceeds to programming tools such as Visual Basic (VB), C++, and Object Linking and Embedding (OLE) 2.0.
Windows Multi-DBMS Programming condenses a small library of useful information for database application developers. North compares tools without showing bias. For example, the tables listing available API calls can help you select the right tool for a specific purpose.
One criticism is that the section on server DBMSs misses the mark. Except for Microsoft SQL Server, the products North discusses do not seem to be affecting the corporate world. Gupta has allied with Microsoft, and Watcom with Sybase, to produce departmental rather than enterprise servers. This section would be more valuable it if covered methods of connecting to Oracle, Informix, Ingres, Sybase, and other industrial-strength databases. But if you want to stay in a Windows environment all the way, this book is a good place to start.
--Windows NT magazine