October 1999 Newsletter
Volume 9, No. 4
Highlights of This Issue
WAIUG Meeting, September 15, 1999 by Peter Wages
WAIUG Elections, by Lester Knutsen
Informix Solutions Portal 99 - My Perspective by James Edmiston
Using CLI to Connect to Informix Databases Through ODBC by James Edmiston
The Washington Area Informix User Group would like to invite you to attend our fifth technical conference and forum. This will be an exciting event that includes technical presentations, practical training sessions, exhibits, demos, and a chance to meet and network with other Informix database developers, programmers, DBA's, and users.
Location: Fairview Park Marriott, 3111 Fairview Park Drive, Falls Church VA
Date: Friday and Saturday, February 10/11, 2000, 8:00 am to 5:00 pm
At the last forum we had over 230 participants, 16 speakers and 14 exhibitors. Participants said they learned more practical information in the forum than in any other event. Invitations for this forum are being sent to over 5,000 Informix users.
Planned Session Topics:
Paul Gancz, Informix, Advanced Technology Group
Paul will discuess tuning tips for Data Warehouses based on a benchmark
he conducted for a federal agency where Informix out performed all the
other major database vendors.
Nick Nobbe, Independent Consultant and Peter Wages, EDS
Nick and Peter will present experiences on installing Linux, Informix
IDS and Informix 4GL.
Location: Informix Software Corporation
8065 Leesburg Pike, Suite 600, Vienna, VA 22182
The meeting is open to everyone. Please RSVP to 703-256-0267 x101, so we can keep a count.
The user group has been supported by many companies over the years. We would like to thank the following companies for sponsoring this issue:
Advanced DataTools Corporation
Quarterly Meetings: The Washington
Area Informix User Group (WAIUG) holds quarterly meetings alternating between
sites in the District, Maryland, and Virginia. The focus of the meetings
is to share information about new products, present solutions to problems,
and provide technical tips to Informix programmers, system designers and
database administrators. We feature guest speakers on topics of interest
to Informix users. Meetings usually last from 9 am to 12 noon and are open
to all Informix users. Please call 703-256-0267, or check our web page
for the current schedule.
Newsletter: All members receive a quarterly newsletter filled with
articles on how to get the most from your Informix database and products.
Articles have included tips on optimizing your database design, 4GL programming
techniques, data warehousing, and DBA monitoring tools. Several authors
from our newsletter have been selected to be published in the Informix
Tech Notes and the Informix Systems Journal. Our web site contains an archive
of all the newsletters since 1993.
Day Forums and Training Days: The WAIUG has held four one day Technical
Forums. The past Forums have averaged over 200 participants, with excellent
speakers and exhibitors. Members report this is the most-anticipated and
most practical user group event of the year. The forums have included technical
sessions on Optimizing INFORMIX-4GL, INFORMIX-OnLine DSA Tuning, and INFORMIX-OnLine
8.0 New Features. The Forum also features a mini-exposition hall with exhibitors
of products that work with Informix. This
is a great oppurtinuity to network with other database developers, administrators,
and users, and learn the newest technology to get the most from your database
Web Page - www.iiug.org/~waiug/: In
August 1995, we launched a Web Page for the Washington Area Informix User
Group. The purpose of this page is to be able to provide the latest information
to our members and the public on user group activities and tips on using
Informix software. We converted all our newsletters from the past three
years to web documents and they are available for on-line viewing. This
is the place to find the latest news about our meetings, future plans,
links to other Informix-related material and catch up on back issues of
our newsletter. We have a link to the Informix FAQ, and will be adding
links to other Informix resources on the net.
Informix User Group: The WAIUG has been an active participant in the
formation of the International Informix User Group (IIUG). All local members
are automatically members of the international organization. The mission
of IIUG is to support Informix users worldwide. The IIUG maintains a web
site of information and technical tips for Informix users, and an ftp site
of public domain software that works with Informix databases. For more
information on the IIUG, visit the web page at http://www.iiug.org.
Solutions for Informix Users
A Two Day User Group Technical Conference
March 10-11, 2000
The Washington Area Informix User Group (WAIUG), the New England Informix User Group (NEIUG) and the Southeast (Atlanta) Informix User Group (SEIUG) would like to invite you to attend our Informix users technical conference and forum. This exciting event includes:
Date: Friday and Saturday,
March 10/11, 2000, 8:00 am to 5:00 pm
At our 1998 event, we hosted
more than 230 participants, 16 speakers and 14 exhibitors. Participants
said they learned more practical information in the Forum than in any other
event. Invitations for this Forum are being sent to over 5,000 Informix
users. The following sessions and exhibits are planned.
Early Registration Fee $50 (before 2/25/2000) , Late Fee $75 (after (2/25/2000)
Watch our web site for more details!
by Peter Wages
Lester Knutsen, presided over his last meeting of the User Group
as president. Lester announced that Forum 2000 will occur on March
10-11,2000. Forum 2000 will be jointly presented by WAIUG with the
New England Informix User's Group of Boston and the Southeastern Informix
User's Group of Atlanta.
The meeting had two presentations.
Nadia Skiscim of Informix gave us a description of Informix's i.Economy
, Informix's E-Commerce and Internet Publishing solution. James Edmiston
and Peter Schmitt talked about the International Informix Users
Conference in San Diego last July. A unaimous vote approved the new
board. Informix provided refreshments during the intermission.
Nick Nobbe, our new president , closed the meeting.
Nadia Skiscim, a Systems
Engineer with Informix gave a presentation on
Winning with Informix in the I.Economy.
I.Reach is Informix's Web
publishing tool. Its ease of use allows anybody in an organization the
ability to put something on the Web. I.Reach has been used with Informix's
Datablade technology and Informix's Universal Data Option.
I.Manage is Informix's Media
360 product, which allows a business to store and index media assets. The
BBC and CNN use this product extensively.
I.Decide allows a business
to analyze what a potential customer is doing on the business's website.
I.Partner stands for the partnerships that Informix has in helping a business in the I.Economy.
Overall, it was a fascinating presentation and generated many questions
and discussion in the meeting. Informix is making extensive
use of Java and new technologies such as DataBlades with these products.
Datablades are not just used in Hollywood now.
Informix provided refreshments during the intermission.
After the intermission, James Edmiston and Peter Schmidt presented slides of the International Informix User's Conference in San Diego July 1999.
by Lester Knutsen
At the September 15, 1999, meeting of the Washington Area Informix User Group,
we held elections for the Board of Directors for the following year. I
am very please to announce the results of the election:
Board of Directors:
At-large Board Members:
After nine years as president I would like to thank everyone for their support, and I would like to thank Nick Nobbe for taking on the job. We would also like to thank John Petruzzi, for all the work he has put into the user group as membership director for the past several years.
by James Edmiston
There are many third-party tools on the market for developing client applications and performing query and reporting against Informix databases. In this article we will discuss how to enable third-party tools to access Informix databases through ODBC by installing and configuring Informix-CLI. Although CLI is the client connectivity tool for both a UNIX client and a Windows client, we will only discuss setting up ODBC for Microsoft Windows environments.
Application development tools like PowerBuilder and Visual Basic enable a developer to create client applications to access RDBMS databases. Products like BrioQuery give the user a front-end tool to report on their data located on a database server. You may even have a need to use Microsoft Access database to link to an Informix database.
The connection from a Windows client to an Informix database server is achieved by utilizing the Microsoft Open Database Connectivity (ODBC) standard. ODBC is an API specification that enables access to multiple DBMS's using SQL. ODBC enforces a standard that gives client applications interoperability across database platforms.
An ODBC enabled application gains access to a database through the use of an ODBC driver. Each DBMS requires a different driver. The Informix ODBC drivers are bundled in a suite of client connectivity products.
Informix provides a suite of connectivity products that are used to enable Microsoft Windows' clients to access Informix servers. The two main products are Informix-CLI and Informix Connect. In the past, each of these products was shipped as a separate installation CD. As of this year, these products are bundled together on one installation CD called Informix Client Software Developers Kit for Microsoft Windows Environments, or Informix Client SDK.
The Client SDK contains much more than CLI and Connect. It includes programmer API's for C++, ESQL/C and Java. It also contains the latest Informix ODBC drivers and two versions of the ODBC Driver Manager. The remainder of this article will focus on installing Informix-CLI and the related components, and configuring the Windows client to use the latest ODBC driver to connect to an Informix database server.
There are several options to choose from when installing SDK. Early in the installation process, there is a choice of "Typical", "Compact" or "Custom" install. If you choose "Custom" you can see all of the components of the SDK. A "Typical" install will provide the components necessary to establish an ODBC setup.
Following is a brief description of some of the key products from the installation CD:
Informix-CLI is the Informix implementation of the Microsoft ODBC standard. Informix-CLI is a call level interface, or connectivity tool that enables applications to dynamically access Informix database servers. CLI is composed of API libraries, a version of the driver manager and a version of the ODBC driver. CLI version 2.8 is delivered in Informix-Client SDK version 2.01 and contains an ODBC driver (version 2.8) for Informix.
The Microsoft ODBC Driver Manager (or ODBC DM) is used for configuring an ODBC data source (more discussion about the ODBC data source later). The driver manager is also known as the data source administrator and can be found in the Windows control panel. The Driver Manager may already be installed on the client by another product. There are 2 versions in the component install list on the Client SDK installation CD. Driver Manager version 2.5 and version 3.0. Refer to the Informix Client Products Installation Guide for Microsoft Windows Environments for more details on ODBC driver manager.
The Intersolv ODBC Driver is another component bundled in the Client SDK. The Informix ODBC driver, version 2.8, is automatically installed with Informix CLI version 2.8. The more recent driver, the Intersolv Data Direct ODBC driver version 3.01, is a separate component in the list of options in the SDK install. If you use the version installed with CLI (version 2.8), it is recommended that you use version 2.5 of the ODBC DM. ODBC DM version 3.0 is required if you use the Intersolv Data Direct ODBC driver.
Informix Connect is composed of the runtime versions of the connectivity components. Connect comes bundled with most of the Informix Windows client products. This product is useful because it can be deployed on client machines to enable completed applications to connect to Informix databases in the Windows environment.
Once you have installed the products on the Windows client, you must configure the products using the proper server and database information.
The first configuration step is to create a server entry on the Windows client machine, and provide values for the Informix variables. Informix includes a utility in the connectivity products called "Setnet32". Its function is to provide the Windows client with the information it needs to connect to the server by defining the database server, host machine, network protocol and user account information. Setnet32 saves these entries in the Windows registry. A helpful feature of this utility is the ability to save the configuration to a file and conversely load it from a file. If there are several clients to configure with the same server information, an initial machine can be configured manually, the configuration saved to a file and loaded on other client machines.
To use Setnet32 on the Windows client, click on Start, Programs, the Informix program group installed with SDK, then Setnet32. The first screen that is displayed shows a list of environment variables. Some of the environment variables are required and some are optional. The majority of the environment variables on the client are used for CLI function calls and GLS programming. We will focus on two variables used to establish client/server connectivity.
The Environment tab of Setnet32
In the environment screen, scroll down through the list toward the bottom and check the settings for INFORMIXDIR and INFORMIXSERVER. The INFORMIXDIR variable is automatically set with the directory value specified during the software setup and installation. The INFORMIXSERVER variable can be set manually, or it will automatically be set as a result of entering values in the Server Information tab.
In the Server Information tab, define an entry for the server.
The Server Information tab of Setnet32
Informix Server - the Informix database server/instance name.
HostName - the name of the host machine where the database server resides.
Protocolname - the network communication protocol.
Service Name - the service name in the services file that corresponds to the listening port.
Options - this is used for defining groups.
After the information has been entered, click on "Make Default Server" and the INFORMIXSERVER variable in the Environment tab will be set with the value from the from "Informix Server" field. Click on the "Apply" button to create the entry and click on "OK" when finished. Define as many servers as needed.
If you are familiar with setting up Informix Dynamic Server for UNIX, you may find these entries are identical to the information entered in the sqlhosts file. This information is saved in the Windows registry under a key value - SQLHOSTS. As a result, there is no need to have a sqlhosts file on the Windows machine. Rather, the INFORMIXSQLHOSTS variable in the Environment tab contains the name of the client machine name where the registry entries reside.
ODBC Data Source
A Data Source consists of an ODBC driver, a database and the server information. The server information is the same information defined previously in Setnet32. A Data Source is created using the ODBC Driver Manager or ODBC Data Source Administrator as discussed previously. The ODBC Data Source Administrator is started in Windows by clicking on Start, Settings, Control Panel, and ODBC.
In the initial screen, click on the "Add" button to create a new data source. A list is displayed showing all of the ODBC drivers installed on the Windows client. From this list you can see the version numbers and actual file names of the drivers.
To reiterate what was previously mentioned, the first Informix ODBC driver in the list above, version 2.80, is automatically installed with the CLI components. The second Informix driver, version 3.01, is a separate component in the list of options in the SDK install. There are different characteristics associated with each driver concerning the actual ODBC data source set up. The example below illustrates creating an ODBC data source using the version 3.01 driver.
In the General tab, enter the data source name, description and database name. The key here is specifying the exact database name that you are connecting to.
in from the "default server" specification in Setnet32
In the Connection tab, the default server information is automatically filled in from the server creation in the Setnet32 utility. If this particular data source needs to connect to a server other than the default, simply specify the values here. Once the information is entered in the "General" and "Connection" tabs, click on "OK" and the ODBC data source is complete.
The final configuration item is adding an entry to the services file on the client machine. This is identical to the /etc/services file in the UNIX environment. The entry consists of the service name, listening port number and protocol. On the client, the service name must match the service name specified from the server entry created in Setnet32. The listening port number must match the number specified on for the server. The protocol for a tcp/ip network will be "tcp".
The services file for the Windows client is located in the windows home directory. However, the specific location depends on the operating system. For Windows 95, the file is c:\windows\services. For Windows NT, c:\winnt\system32\drivers\etc\services. Use an ASCII editor (Notepad) to open the file and insert a line to identify the service. The format of the service entry is documented at the top of the file.
An example of a services file entry is:
informix1 1526/tcp #Informix server
Make sure there is a carriage return at the end of the line.
Testing the connection
After the server is defined to the client and the services file entry has been created, the client to server connection needs to be tested. The ILogin program is provided as part of the product install to help verify that all of the information is correct for the client to connect to the server. Execute the utility on the Windows client by clicking on the Start, Programs, the Informix program group installed with SDK, then "ILogin Demo". Enter a valid user-id and password, and ILogin will automatically attempt to connect to the default server and run a query against the customer table of the stores7 database. This is a useful tool for trouble shooting the client to server connection.
The database connection defined in the data source needs to be verified using an ODBC-enabled application. The application references the data source by the Data Source Name (DSN). Refer to the product documentation for referencing a DSN. Your connectivity setup is complete once you have established the connection from the application software to the database.
The first several times I attempted to configure a client with Setnet32 and ODBC, I would experience a different error. However, by reading documentation, consulting with others, and through trial and error, I was able to get to the point where I could accomplish the process without any problems. I've included some of the "gotchas" that I experienced.
2. Informix error -908. Verify the listening port number defined on the server matches the client.
4. Informix error -931. Verify the service file entry matches the service name in the Setnet32 Server Information tab.
6. Informix errors -951 and -956. These errors indicate the user and/or the host machine does not trust the client machine. The client machine name may need to be added to the /etc/hosts.equiv and/or the .rhost file in the user's UNIX home directory on the server machine.
8. You may experience this error during the ODBC setup in the ODBC Data Source Administrator:
The solution to this problem is to explicitly set the INFORMIXDIR and PATH environment variables in the Environment tab under System Properties in the Control Panel. Create the INFORMIXDIR variable and supply the value of the directory where Informix CLI is installed on the client. Add the Informix home directory path plus the "\bin" to the beginning of the PATH variable. Set these in the System Variables section.
Setting up the client server connectivity may involve more in depth troubleshooting and analysis. Be prepared to allow time for these activities.
It is very important to reference the documentation materials that come with the product. In addition to reading the release notes, there are several manuals that address the steps covered in this article.
2. Informix Client Products Installation Guide for Microsoft Windows Environments, Version 2.0. This describes how to install and configure the client products addressed in this article.
4. INFORMIX-CLI Programmer's Manual, Version 2.8. This manual is helpful with configuration as well as the deeper workings of CLI.
6. INTERSOLV DataDirect ODBC Driver User Guide for Informix Database Servers, Version 3.01. This is an excellent resource for referencing the items covered in this article pertaining to the ODBC driver and Driver Manager.
James Edmiston is President of Quest Information Systems, Inc. and an Informix Certified Professional. He serves as Treasurer and Membership Director of the Washington Area Informix Users Group. Visit his company web site at www.questisinc.comor email him at James@QuestISInc.com
4216 Evergreen Lane, Suite 136, Annandale, VA 22003
General Information: 703-256-0267