| Front Page | News Headlines | Technical Headlines | Planning Features | Advanced Search |
Taurus Software Sponsor Message


OmniSolutions, Inc.
940 Laurel Canyon Blvd. #717
Studio City, CA 91604

Phone: 800.935.0101 818.382.9881
Fax: 818.382.9885

Europe: www.gainsborough.com

SqlLink3000 is both a migration tool and a tool for extending the life of your HP 3000 applications. The price for SqlLink3000 ranges from $1,900 to $3,900 per server plus an additional $20-$40 per user fee. Product support can be obtained from OmniSolutions, Inc., or from Gainsborough Software (only in Europe). Each license includes three months of maintenance and support. After the initial three months, the support charge is 15 percent of the software license fee.



September 2002

SqlLink3000: Your Data’s Link to the Future

Link Your HP 3000 to any SQL database on any platform

Review by John Burke

SqlLink3000 is both a migration tool and a tool for extending the life of your HP 3000 applications. As a migration tool, SqlLink3000 can be used to create custom programs for migrating your TurboIMAGE data to an SQL database on a Windows, Unix or Linux platform. It can also be used to create a program to synchronize your databases on your migration platform with your databases on your HP 3000 in a step-wise migration.

As an application extender, SqlLink3000 can be used from any HP 3000 application to access, and even update, SQL databases on a Windows, Unix or Linux platform. All you need is an ADO or ODBC driver on the SqlLink3000 Windows bridge server. Looked at this way, SqlLink3000 is the first and only ODBC client for the HP 3000.

Features, and how it works

SqlLink3000 has two main components, a multi-threaded data server that runs on a Windows workstation or Windows server “bridge” machine and a library (XL) of callable routines that reside on the HP 3000 client system. SqlLink3000 makes use of Microsoft Active Data Objects (ADO) and can connect to any SQL database for which you have ADO or ODBC drivers.

SqlLink3000 supports connections to multiple databases at the same time and multiple connections to the same database at the same time. SqlLink3000 gives you full read/write access to your SQL databases, supports INSERT/UPDATE/DELETE/EXEC statements, supports “views” and supports stored procedures. The procedures in the SqlLink3000 XL library and their functions are:

SqlConnect — connect to the remote data server and open your database

SqlClose — close your database and disconnect from your remote data server

SqlExec — execute a SQL command; i.e. INSERT, UPDATE, DELETE

SqlRead — initiate a read operation on a table, a view or linked tables

SqlGetNext — retrieves the next record from your database

SqlGetStringField and SqlGetIntegerField — retrieve a string field or numeric field from your record

SqlGetDecimalField — retrieve a decimal numeric field from your record

The default listener port for SqlLink3000 is 9875. This can be overridden by a run time parameter. SqlLink3000 is multi-threaded. Each requestor talks to its own socket. Hovering over the icon in the system tray of the bridge machine will show the number of connections.

The SqlLink3000 package also includes SqlQuery, which allows you full access to your SQL databases from your HP 3000 without having to write code. Simply connect to the database and issue standard SQL statements such as SELECT, INSERT, UPDATE and DELETE. Since SqlQuery pipes your SQL statements to your SQL database using SqlLink3000, most of the work is actually done by the bridge server running SqlLink3000. The only thing you need to supply for SqlQuery is the IP address of the SqlLink3000 server and a standard “connection string.”

SqlLink3000 has been tested against SqlServer, Oracle, Access, PostgreSQL and MySQL, but should be able to access any SQL database for which there is an ODBC or ADO driver.

System requirements

The SqlLink3000 bridge server software will run on Windows 95/98, Windows 2000 or Windows XP. The MPE XL procedures will work on any supported version of MPE/iX. Any reasonably new PC should be an adequate platform for the SqlLink3000 bridge server software.


Pretty standard stuff — which of course means you have to get out of all other programs and reboot for the changes to take effect. After doing the Windows installer bit, you have to transfer six files to your HP 3000 either as WRQ labeled files or as a single store-to-disk file you unpack with RESTORE. This should all take less than 15 minutes even on a bad day.

If you are going to use SqlLink3000 to access an SQL database via ODBC, you will also have to install and configure an ODBC driver for your database onto the SqlLink3000 machine. This may require a little Googling and Internet cruising but should not take too long. Here is a little hint: try to connect to your database from your SqlLink3000 system first to get any configuration issues out of the way.


The documentation I received can best be described as Spartan. It consisted of two slim manuals, a 22-page manual on SqlLink3000 and a 10-page manual on SqlQuery. At my urging, a section on configuring the ODBC connection was added to the SqlLink3000 manual. Previously, all of the examples assumed a database on a Windows platform.

The documentation is saved from low marks by the inclusion of a well-annotated COBOL program that shows how to use the SqlLink3000 calls (the source as well as a pre-compiled and linked NMPRG file are part of the product distribution). This is extremely useful for anyone starting out to use SqlLink3000.

Let’s take it out for a spin

The sample database, COBOL program and SqlQuery demo pretty much work right out of the box — install everything (15 minutes on a bad day), fire up SqlLink3000 on the Windows bridge machine and you are good to go. No configuration needed. However, the sample database resides on the same machine as SqlLink3000 does and I wanted something a little more interesting. My gaze naturally turned toward the Linux box sitting right next to my R&D HP 3000.

I’ve wanted to load up MySQL on the Linux box, I say to myself, so it was off to the Internet to get MySQL for Linux and its Windows ODBC driver. Several days of part time hacking and a few false starts later (mostly dealing with MySQL security), I had MySQL loaded on my Linux machine, along with the menagerie database (see Figure 1) and ODBC configured on my bridge Win2K machine (see Figure 2). Once I had the MyODBC Windows driver talking to MySQL on the Linux server (more MySQL security issues), SqlQuery on my HP 3000 worked like a charm (see Figure 3). Obviously, this little example does not address performance (see below). But it does show that from the HP 3000, you can probably talk to any of the popular SQL databases, whether on Windows, Unix or Linux.

User Experience

Since I was only able to test a simple example, albeit a complex scenario, I spoke with several users of the product. I wanted to find out how they were using SqlLink3000 and what their reactions were. Here is one story.

This organization wanted one of their on-line HP 3000 applications to be able to extract some customer data from a sales system running on a Linux server using an Informix database. After much searching to find a cost-effective way of doing it, the organization settled on SqlLink3000.

They report the implementation was relatively straightforward. A COBOL subroutine was written for the HP 3000 application that made the necessary SqlLink3000 calls. This could then be plugged into the main application wherever required. The main application had to be tweaked a bit to do some necessary housekeeping (open and close of the link, etc.). Finally, a simple PC, available for under $1,000, with SqlLink3000 and the ODBC driver for Informix installed, was used as the bridge between the HP 3000 and the Linux-system. All of this took just several man days of labor to complete.

The first hit of their day by the first user takes up to 30 seconds as everything starts up. From then on, when the user hits ENTER, the data from the HP 3000 and the Linux box arrive as fast as it takes the screen to paint, virtually instantaneous. [Note: I saw similar behavior in my test; i.e. 30 seconds for the first connect, but instantaneous response afterwards. I also noticed that after the first open of the day, subsequent opens seemed to be very fast, even if I was the only one using the connection.]

They noted that the application uses a highly optimized SQL query designed to get one specific table of data and return it. Thus there is no way to project the performance if the SQL query had to read a lot of entries or return a lot of entries.

The revised application went live in July with no reported problems. While the user does not do any writes in production, they did try a test that did updates and found them to be equally fast.


SqlLink3000 is not easily categorized. On the one hand it is a migration tool, while on the other hand it can extend the life of existing HP 3000 applications by providing access to SQL databases on other platforms. Either way, it is worth a look.

John Burke is editor of the NewsWire’s net.digest and Hidden Value columns and has managed HP 3000 systems for more than 20 years.



Copyright The 3000 NewsWire. All rights reserved.