Main BASIS Page
Main Advantage Page
This Issue's Table of Contents

Light-Speed Connectivity: BQS, JDBC And ODBC
by Jeff Ash
Moving to Modern Programming: BjDE Table of Contents Visual Pro/5: A GUI Migration Case Study

For several years, BASIS has produced products that allow users to access their data files using the Structured Query Language (SQL). With SQL, users are able to execute very complex queries on their data without having to write complicated, cumbersome code. As technology is advancing in the data access arena, BASIS is moving right along with its next generation of data access products.

The BASIS Query Server (BQS)
Currently in development at BASIS is a component of our new product generation, BBj;. We’re calling this component the BASIS Query Server; (BQS). This exciting new system will give BASIS customers features and functionality comparable to true database management systems (DBMS) currently on the market.

The BQS is made up of an entirely new SQL engine that has been designed with a host of new features. BASIS’ goal is to bring the SQL engine as close as possible to full SQL-92 compliance. With this in mind, additions are being made to allow for:

  • left, right and full outer joins
  • true integrity constraints
  • support for catalogs and schemas
  • the ability to grant and revoke user privileges
  • many other features not found in BASIS’ current SQL grammar

There are also other features being added that are not specifically related to the SQL-92 standard such as username and password authentication, improved handling of GROUP BY and ORDER BY, user-defined date formats, a true DATE type, user-defined scala r functions and much more. Included with the BQS will be a new and improved administration tool (similar to DDBuilder® but platform independent) that will allow for easier maintenance of data dictionaries and other BQS features. But the most exciting new aspect of the BQS is that all query execution and processing is performed on the server.

Server Execution
Accessing data on a remote server from a client machine is not new to BASIS products. Using PRO/5®, Visual PRO/5® or the BASIS ODBC Driver®, users can access data on their local machine or a remote server on a different continent. However, when a query is executed, all of the processing is done on the client machine. This means that every record that could possibly meet the criteria specified in the WHERE clause of the query must be transported across the network or modem connection from t he server to the client for processing. This can drastically affect performance. For example, if we have a table called CUSTOMER and we want to count the number of customers that live in Belen, New Mexico, U.S.A., we might execute the following query usin g the BASIS ODBC Driver:

SELECT count(*)
FROM customer
WHERE city = 'Belen'

If there are 1,000 customers who live in Belen and the client does the processing, each of the 1,000 records will be transported from the server to the client and counted. Depending on the speed of the network connection, this could take a significant amount of time. But with the new BQS, the actual counting will occur on the server and only the end result (the number 1,000) will be transported across the network.

JDBC and ODBC
With the release of BBj and its BQS, there will also be new BASIS ODBC and JDBC; drivers. The new BASIS ODBC Driver will allow users to access the BQS from any ODBC-compliant application, including existing Visual PRO/5 applications. This release of the BASIS ODBC Driver will follow the ODBC 3.51 specification and feature greatly increased functionality, allowing use with even more applications than currently possible. And with the JDBC Driver and the BQS, developers w ill be able to access existing data files from any JDBC-compliant application on any operating system that has a Java; Virtual Machine (JVM), without giving up the ability to access that same data through existing BBx® or BBj applications.

Programmers familiar with JDBC will be pleased to know that BASIS will allow them to choose between two different JDBC drivers, one using the JDBC 1.2 application programming interface (API) specification and the other using the JDBC 2.0 API specificat ion. This will give developers access to the maximum amount of database functionality available from the JVM they are using. I encourage developers unfamiliar with JDBC and the JDBC API specification to visit the Sun Web site at http://www.javasoft.com an d learn about this exciting, platform-independent, data access technology.

At TechCon99
I’ll be demonstrating and discussing the BQS and its exciting capabilities in detail in this TechCon99 session. Don’t miss out on learning how to exploit more of the data access technologies currently available and take full advantage of true client/s erver database access with minimal or no changes to your current ODBC Driver, PRO/5 and Visual PRO/5 applications.

Jeff Ash started developing software 17 years ago at the age of 10 and has been addicted ever since. He has designed databases and database applications for internal business uses as well as for the Web. Jeff is currently wr iting the new BASIS Query Server, the next revision of the BASIS ODBC Driver® and the new BASIS JDBC Driver, which together form the next generation of BASIS data access technologies.

 
Moving to Modern Programming: BjDE Table of Contents Visual Pro/5: A GUI Migration Case Study

Subscribe to The BASIS Advantage Magazine!

 
 
Copyright 1999, BASIS International Ltd. All rights reserved.
Terms of Use
.