This software product offers technology of getting information by requests from different databases for users, not possessing knowledge of the SQL language.
The main particularity of the proposed decision is that the software product consists of two interconnected parts: CLIENT (DB Query program), which is installed with the end user, and REMOTE SERVER, installed with the owner of Database to which access is organized.
DB Query Client is a simple and not demanding
to resource program (thin client), running on WIN9x/NT/XP, has a friendly interface
and allows to make search request to Databases quite simply. Having formed the
request, client sends it to the remote server, which processes request and returns
result the to client.
The remote server The Remote server is installed on the host from which all necessary databases are available. It performs the authorized connection of clients, granting the individual rights of access to data, and processes the incoming requests from clients.
The client does not have direct contacts with data sources,
it interacts only with user and remote server. Direct access to data is performed
on remote server and is hidden from user. The interaction of client and server
occurs through local or global network by TCP/IP protocol.
Presence of reliable possibilities of protection against unauthorized
data access and facilities of central client management; possibility to
organize the same access to different databases; simplicity of the use -all
this makes this software product a good way of organizing the work of users
with different databases.
The real picture of interrelations of database objects is
often very complex even for managers of the information systems, to say nothing
of ordinary users. However, users want easy to get information from database
easily, not knowing particularities of their structure.
DB Query allows to solve this problem by means of access schemes. For a user,
the scheme looks like an abstract object, with fields on which one assigns data
select conditions. Using the scheme, the user does not see real database objects
(tables), their relationships, their own databases, locations on servers ...etc.
All this information is hidden from the user, it is kept on remote server and
is created by administrator while scheme designing using administrators utility.
Interconnected tables from heterogeneous data sources (database servers, local
tables) can be included in one scheme. The Schemes can be of two types - table
and list schemes (depending on the manner of query result presentations).
Answer on table scheme always returns in the form of a table.
Such schemes are used for data, which are better presented in the form of tables.
Using table scheme it is possible to choose fields included into the table,
to assign sorting conditions, to print the result - the whole table, or a separate
record.
List schemes use for presentation of the information data
structures, which are difficult to present in tabular manner. Using list scheme
it is impossible to choose fields included in result, and the volume of output
information in this case is limited. The list scheme query result returns in
the form of hierarchical list:
Graphical data can be included in list schemes.
Thin DB Query CLIENT runs under WIN9x/NT/2000/XP. Installed program occupies approximately 5 mb disk space. Remote server must be accessible to the host where client is installed. It may be network or modem connection though internet. Interaction of the client and server occurs through TCP/IP protocol.
The program does not require special resources and wholly runnable on hardware with minimum requirements for OS WIN9x. For successful program functioning, a remote user must not neccessarily have a high speed modem, because in process of the functioning intensive network traffic is not generated (while testing, good results were received on speed 14400).
Client works in such a sequence:
The software product contains developed features of data protection
from unauthorized access. First of all it is the authorized connection to remote
server. Each DB Query user has a name and a password, defined by administrator,
which must be specified at connection. Remote server authorizes the user by
name and password and gives access only to those information resources which
are determined by administrator.
For prevention of the possible drain of the name/password, is used simple and
efficient binding of concrete user to his computer. This means that with given
name/password user can work only from one work place.
User binding is realized as follows: Having received a name
and a password, the user begins to work and his computer is defined a counter
of connections to remote server (is kept in system registry) which is strictly
synchronized with the counter in the user's account on remote server. In case
the same user attempts to connect from miscellaneous computers, the counters
on client and server will inevitably be different and client will be refused
the connection. Herewith, it is necessary to note that there is a possibility
for different users to work from the same computer.
This binding mechanism imposes certain features when client must be moved from
one workstation to another, or when OS must be reinstalled. In case of mismatching
of client and server counters the reparing of the user's account into the efficient
status is carried out by the remote server administrator.
To prevent the selection of the password by unauthorized persons (at a known
login name) the remote server locks the user's account after the certain number
of unsuccessful attempts of autorization, with the subsequent sending of a warning
message on administrator's e-Mail about attempt of breaking the system.
The remote server is installed with the provider of information
services and works under system WIN95/NT/2000/XP. For data access Borland DataBase
Engine (BDE) of company Inprise is used, which is capable to give access practically
to all data sources used nowadays.
Software of the remote server offers the administrator following opportunities:
Client is installed on host, working under Win9x/NT/XP. The
installed program occupies approximately 5MB disk space. The recommended video
mode is not lower than 800*600*256 colours.
Run setup from directory with the distribution kit.
After client have been installed, open with any text editor file DQB.ini
(is located in directory where client was installed), find line "HOSTS=..."
and specify IP address or name of remote server. There can
be several addresses (they should be specified through 1 blank). At connection,
client will try to connect to all of these servers in turn, then the address,
to which it was possible to connect will be stored as the first in the list.
Execute ping command to remote server host, (previously, if it is necessary
connect to server host with modem). Be sure, that the server host is accessible
to you.
Receive your name / password from the administrator
Launch DB Query client (dqb.exe)
On login request enter your name/password.
If you work under Win95, at connection you will probably receive the error message:
Winsock2 must been installed to use socket connection
The reason - Winsock2 library which is not included into Windows 95 distribution kit is not installed. In this case you must install this library separately.
Before you launch client it is necessary to be convinced
of availability of the remote server host. If access is carried out through
the modem, it is necessary to make modem connection.
Immediately after the program is started user needs to enter a login name and
password received from the administrator.
If after the attempt of connection the message is given out:
Could not connect to any host: (list of IP addresses)
it means, that host of remote server is not accessible, or the software of remote
server is not started.
If the message is given out:
User is refused in service from this work place
that it means, that the protection against the unauthorized access
to data has worked. Client and server connection counters has been mismatched
on one of the following reasons:
In this case reparing of the user account in a work status is carried out by administrator.
Immediately after the connection to remote server the form with available schemes become active. The necessary scheme is selected by double clicking on form. Administrator can determine the individual list of the accessible schemes for each user. While working it is possible to change the current scheme from the main window of the program.

To enter a select condition it is necessary to click
on any field in the table of fields of the main program window. If it is necessary
to search on partial matching of field value, symbols of % _ are used. The symbol
percent designates anyone (including empty) sequence of symbols, underlining
- any symbol in the given position. (Syntax of "like" operator of SQL language
is used). There are 4 types of query fields. Depending on field type appropriate
input form is activated.
Condition input form for a simple field.
Condition input form for compound field. In order to input conditions
easier, compound fields can be formed from several logically interconnected
simple fields. For instance if in scheme there are fields "First Name" and "Last
Name" (person data) and in query they often must be specified then designing
the scheme you can define the compound field "Person" and include in it these
fields.
Select conditions are entered in a single line on all fields delimited by space.
If condition on any field is omitted, the % symbol on this place must be specified.
using symbols "% _", it is possible to enter condition on partial matching of
field value.

Condition input form for dictionary field. Dictionary fields - are fields
int tables which keep codes instead of values. Each code matches one value.
These fields are usually used to spare disk space and to accelerate search.
Dictionary descriptions is located on remote server and are defined by administrator.
While entering search condition on this field the user selects values from the
dictionary table offered to him.

condition input form for two level dictionary field. Two level dictionary
field is a compound field which consists of 2 dictionary fields. The first field
contains a high level dictionary, and the second field - a low level dictionary
which depends on current value of the high level dictionary. For instance in
high level dictionary we may define goods types and in low level dictionary
goods specifications will be described in detail.
This form show SQL query which corresponds to current
select conditions. Entering necessary changes into SQL text with its subsequent
processing is enabled. For this at first edit query, then press button "Apply"
and press button "Execute query" on the main form.

On this tab sheet all table records are shown

But on this sheet there is only the current record (Conveniently
to view when table is wide)
In such form the answer on list scheme type
"H" is given out

This file has name dqb.ini and is located in directory where client was installed. File contains the tuning client parameters.
| Parameter | Default value | Description |
| PORT | 211 | TCP/IP port through which there is an exchange with server |
| HOSTS | Addresses list of remote servers. Such addresses can be several (they should be specified through 1 blank!). At connection client will be tries to connect to all these servers under the order, then that address, to which it was possible to connect will be store in list by first. | |
| LANGUAGE | ENGLISH | interface language |
| RE_FONT | Courier New | Font using in answer form of scheme type "R" |
| RE_FONT_SIZE | 10 | RE_FONT font size |
| USER | User name which last have been connected to server |