The QM File System

Top  Previous  Next

 

File Types

 

The files used by QM are of two types; directory files and dynamic files. Directory files do not give high performance but allow data to be viewed from outside of the QM environment. They are therefore frequently used for data interchange with other software. Dynamic files offer very high performance and are typically used for the bulk of the data stored by an application.

 

Facilities are provided to create data files, enter, modify and retrieve data, produce reports and, where the data processing operation required cannot be achieved using the standard commands, to construct powerful programs with the minimum of effort.

 

Most files consist of two parts; a data part holding the actual data and a dictionary part holding a description of the structure of data records. Files do not have to have both parts. Files with no dictionary portion are fairly common. Dictionaries with no data part usually exist only to provide a single dictionary common to the data portion of many files.

 

For compatibility with other multivalue database products, QM also supports multifiles. These are a collection of data files that share a common dictionary where the component files are referenced by a two part name consisting of a file name and a subfile name separated by a comma. See the CREATE.FILE command for further details.

 

Files contain data stored as records which are the basic unit of file access. Records are identified by unique keys which may be any sequence of up to 63 characters. This limit can be increased by the system administrator.

 

 

Special Filename Syntaxes

 

Normally, QM commands that reference files use a file name that corresponds to an F or Q-type VOC entry which, in turn, references the actual operating system file to be accessed. There are three special extended syntaxes for filenames that allow access to files without needing a VOC entry. Use of these is controlled by the FILERULE configuration option. Users should consider any impact of the security of their system before enabling these.

 

The three extended syntaxes are:

Implicit Q-pointeraccount:file
Implicit QMNet pointerserver:account:file
PathnamePATH:pathname

 

Note that in the final form, depending on context, Windows users may need to use forward slash characters (/) as directory delimiters because the backslash (\) is reserved as a string quote. Alternatively, the entire "PATH:pathname" construct can be quoted.

 

These special syntaxes cannot be used with a multifile component name.

 

For details of file processing from QMBasic programs, see File Processing.

 

Creating and Deleting Files

Creating and Modifying Data

Locks

Alternate key indices

Triggers

Monitoring the File System