A

Accelerated

A file open mode that provides improved response time over Normal mode when updating data files. However, Accelerated mode disables the MicroKernel's logging capability. Therefore, the MicroKernel cannot guarantee transaction durability or atomicity on files opened in Accelerated mode.

If you are using Btrieve 6.x, Accelerated mode is equivalent to Normal mode, except that opening a data file in Accelerated mode cancels the effect of flagging a file as transactional.

In pre-6.0 Btrieve, this file open mode disabled the engine's data recovery capability. Also, once a file was opened in Accelerated mode, other tasks could open the file only in Accelerated mode.

See also Exclusive, file open mode, file sharing, Normal, Read-Only, and Verify.

access modules

Implementations of specific data models that provide appropriate data structures and access techniques. Access modules receive requests from application programs and make calls to the MicroKernel to perform the required core data operations.

access path

See index path.

access right

A security right that determines a user's ability to access tables or individual columns. The access rights are Select, Update, Insert, Delete, Alter, References, and All.

See also All right, Alter right, Delete right, Insert right, References right, Security right, Select right, and Update right.

aggregate column value

A column value which is determined by a group aggregate function. This value is based on a set of column values selected from a table. See also group aggregate function.

aggregate function

One of a group of SQL functions you use to return a single result for a given set of column values. The aggregate functions are AVG, COUNT, MIN, MAX, and SUM. You can use aggregate functions in a select list or a HAVING clause.

aggregate value restriction clause

A type of restriction clause that follows the HAVING keyword in which the first expression of each condition must be a group aggregate function. The second expression can be a constant, a string or numeric literal, or a subquery. An aggregate value restriction clause can contain multiple conditions. See also group aggregate function and restriction clause.

alias

A temporary name you can assign to a table or view in any of the following:

  • The FROM clause of a SELECT or DELETE statement
  • The INTO clause of an INSERT statement
  • The table list in an UPDATE statement

Once you define an alias for a particular table or view, you can use the alias elsewhere in the same statement to qualify column names in that table or view.

All right

A Pervasive.SQL security right that includes the Select, Insert, Update, Delete, Alter, References, and Create Table rights.

all-segment null

A key attribute that instructs the MicroKernel to exclude a particular record from the index only if the value of all key segments of that record matches the specified null value. In pre-6.0 Btrieve, all-segment null keys are known as manual keys. See also null key and any-segment null.

Alter right

A Pervasive.SQL security right that allows users or user groups to modify table definitions. See also table definition.

alternate collating sequence

A sorting sequence that the MicroKernel uses to sort string values differently from the way that the standard ASCII collating sequence sorts them. Alternate collating sequences (ACSs) can be locale-specific, user-defined, or an international sort rule (ISR). See also collation table and International Sorting Rules (ISR).

alternate key

In Pervasive.SQL, a candidate key that is not a primary key. It also uniquely identifies a row in a table.

anomaly

An illegal RI definition that, if permitted, could result in the inconsistent handling of certain update, insert, or delete operations, thus harming the integrity of the data.

any-segment null

A key attribute that instructs the MicroKernel to exclude a particular record from the index if the value of any key segment of that record matches the specified null value. In pre-6.0 versions of Btrieve, any-segment null keys are known simply as null keys. See also null key and all-segment null.

AOSS

Abstract OS Services. Implements the Smart Component Management Locate and Event Log APIs, among others.

API

See Application Programming Interface (API).

application

A program or set of programs, such as a spreadsheet or a payroll application, that performs a task or a group of related tasks. Also, a program written by or for users to assist them in their work. See also task.

application interface

A particular programming language interface (such as C or Pascal) that allows access to data files from an application.

Application Programming Interface (API)

A set of functions that an application uses to access a database or initiate system-level routines. A particular programming language interface (such as C or Pascal) to an API. A program that allows access to MicroKernel files from an application program.

archival logging

A MicroKernel capability that, when activated, records all the operations that change a specified data file. These changes are recorded in an archival log file. In the event of a system failure, you can configure the MicroKernel to use the archival log file to roll forward (recover) changes made to the data file between the time archival logging was initiated and the time of the system failure.

arithmetic operator

An expression operator you can apply to two expressions that represent numeric data (either numeric constants or numeric columns). The arithmetic operators are addition (+), subtraction
(–), multiplication (*), division (/), and MOD (dividend,divisor).

ascending

In Pervasive.SQL, the default collating order for an index. In Btrieve, the default collating order for a key. See also sort order.

ASCII

An acronym for American Standard Code for Information Interchange. ASCII is an 8bit information code with which computers can translate letters, numbers, control codes, and punctuation into digital form.

attribute

See column attribute and index attribute.

Prev
Glossary 		Up Next
B


B

back end

A program that provides computationally intensive processing and relies on a front end to provide a user interface. For example, a back end may specialize in calculation, communication services, or data management. Back ends are also called engines. See also database server and front end.

base column

A column containing data from a base table.

base table

A table directly associated with a physical data file that contains the actual rows and columns of the table. Unlike a virtual table, whose data may or may not be directly associated with a physical table. See also data dictionary and table .

binding property

An element of a binding structure. A binding structure consists of binding property identifiers and property values that describe the fields in a data buffer.

binding structure

A single object of data type RSI_PBIND_INFO. A pointer to an object of this data type is referred to as an array of binding structures.

blank fill

To add a series of blanks to the end of a character string to make it a desired number of characters in length.

blank replacement character

A character you must use to replace blanks in a dictionary name when you pass the name to Pervasive.SQL. Otherwise, Pervasive.SQL cannot distinguish between the blanks in dictionary names and the blanks between elements in an expression. Valid blank replacement characters are the caret (^), underscore (_), and tilde (~). Do not use one of these characters when defining a name if you intend to use that character as the blank replacement character.

blank truncation

A method for conserving disk space by not storing the trailing blanks in the variable-length portions of records when the records are written to the file.

Boolean

A category of data types you can use to represent true/false logical values, or any two-valued data. The Boolean data types include BIT and LOGICAL.

Boolean operator

An operator that specifies a logical condition: NOT, AND, and OR. See also condition.

bound database

A named database in which all files (both dictionary and data files) are stamped with the database name. Binding ensures that the MicroKernel enforces the database's defined security, triggers, and referential integrity, regardless of the method (such as Btrieve or Pervasive.SQL) you use to access the data.

bound file

A data file associated with a single table in a specific named database. Pervasive.SQL automatically binds a file to a named database if the file meets any of the following criteria:

  • Is part of a bound database
  • Has a trigger
  • Has a foreign key
  • Has a primary key that is referenced by a foreign key

Pervasive.SQL requires a bound file to be bound to only one table; that is, no other tables in the database and no other databases can bind to the bound file.

browse

A mode of operation that allows you to query part of a database without making additions or changes. A browsing application lets you scroll forward and backward, examining the data before deciding what operation to perform.

b-tree

A multi-level or tree-structured index that provides a quick search path for data. Each branch and non-terminal node of the b-tree contains a range of possibilities within the index. During a search, the MicroKernel makes an evaluation at each node and chooses the path in the b-tree that falls within the range of its search. It follows this path through the b-tree until the desired data is located. This method is fast and efficient because the MicroKernel does not have to scan the entire index to find the requested information.

Btrieve

A complete navigational database management system, based on the architecture of the MicroKernel, designed for high-performance data handling and improved programming productivity.

Btrieve extended operation

An operation that returns or inserts multiple records on one Btrieve call (for example, Get Next Extended or Insert Extended).

Btrieve file

See data file.

Btrieve operation

A specific action (such as Delete, Create, or Get Equal) that manipulates a file.

Btrieve Requester

A program for the applicable DOS, OS/2, Win16, or Win32 environment that resides at a client machine and provides communication between the Btrieve server engine and a client application making Btrieve calls.

buffer

A storage area in memory that holds data temporarily.

Prev
A 		Up Next
C


C

cache

The area of memory that stores images of physical disk pages (or blocks of data). Using cache reduces the number of physical disk I/O requests and improves the MicroKernel's performance.

callback function

A function that is called from outside the code segment of a program. To yield time so that other tasks can run in the Windows 3.x environment, a Pervasive.SQL or Btrieve task must define and register a callback function with the respective engine. See also chaining callbacks.

candidate key

A column or group of columns whose column value (or collective column value) uniquely identifies each row in a table. Tables that have RI defined can have one or more candidate keys. For Pervasive.SQL, all candidate keys must be unique, non-null indexes. See also primary key, alternate key, referential integrity (RI).

Cartesian product join

See join.

cascade

A form of the delete rule. The cascade rule causes dependent rows to be deleted upon deletion of their parent rows. See also delete rule.

case sensitivity

An index attribute that determines how Pervasive.SQL evaluates uppercase and lowercase letters during sorting.

A key attribute that determines how Btrieve evaluates uppercase and lowercase letters during sorting.

See also index attribute and key attribute.

chaining callbacks

Linking more than one callback function together so that each callback is executed. A task can register as many callbacks as needed, but Pervasive.SQL and Btrieve keep track of only the last callback registered for that task. If the task needs to chain callbacks, the task is responsible for chaining each call to the previous callback from the current callback. See also callback function.

character set

A collection of characters and symbols, along with their computer representations, that are necessary to support a specific language (such as French or German).

character validation

See validation.

chunk

Any arbitrary portion of a record, specified by its offset and length. Btrieve enables applications to update and retrieve portions of very large records, called chunks, rather than the entire record.

clause

In a SQL statement, a substructure that contains a group of related items, such as keywords, values, subclauses, and conditions. For example, in the following SQL statement, the FROM clause contains the keyword FROM and a value (Person) for its associated table or view name:

SELECT * FROM Person

A clause may or may not be required in a SQL statement. For example, a SELECT statement requires a FROM clause.

Usually, a clause begins with keywords that are not the SQL command name. However, an entire SELECT statement can be a clause within another SQL statement, such as INSERT. Also, a restriction clause does not begin with a keyword, but contains conditions that define the search criteria for the data that the SQL statement affects.

See also keyword, restriction clause, SQL command, and SQL statement.

client

A task; also, a computer process that accesses the services and resources of other computer processes. In NetWare and Windows NT environments, a client typically is an application that accesses a server-based application. A client may also be a server-based application that accesses another server-based application. See also requester.

client/server configuration

A widely used computer system architecture in which machines designated as servers handle requests from numerous machines designated as clients. This configuration requires a requester module on the client, which communicates with a similar module on the server. Client/server configurations are necessary when controlled sharing of centralized data is required.

collation table

A table that maps a character set to an alternate collating sequence and changes the sort order of characters. See also alternate collating sequence and character set.

column

In Pervasive.SQL, a subdivision of the rows of a table. Columns define a vertical collection of values in a table. All the values in a particular column represent the same type of information.

Regarding the Rowset Interface, associated with position and optional length in row.

column attribute

A characteristic assigned to a column and stored in the data dictionary. These characteristics include default value, heading, null, and validation. See also default, heading, null, and validation.

column descriptor

A single object of data type RSI_PCOLUMN_INFO. A pointer to an object of this type is referred to as an array of column descriptors.

column list

A list of column names.

column name

The name you assign to a column in a table or a view when you create the table or view. See also qualified column name, table, and view.

column qualifier

A base table name, view name, or alias that unambiguously associates a column name with a table. A column qualifier is required when the column name is not unique in a SQL statement.

column value

The actual data stored in a column's portion of a row. See also column, row, and table.

command

See SQL command.

command file

A user-defined file containing a sequence of commands that perform common operations.

commit

To save all the changes you have made to the database during a transaction. See also roll back and transaction.

computed column

A column that does not exist in the base table definition but is created in a view. A computed column can be a constant or it can be calculated from other columns in the view or from scalar functions. You can use a computed column in select lists. When you use a computed column in a restriction clause, it is referred to as an expression. See also expression.

conceptual design

The first phase of database design that involves determining and modeling database requirements.

concurrency

The ability of multiple tasks to access the same data simultaneously while preserving data integrity. See also concurrency controls.

concurrency controls

The methods the MicroKernel uses to resolve possible conflicts when two tasks attempt to access the same data at the same time. Concurrency controls in Pervasive.SQL include isolation levels for transactions, explicit record locks with Btrieve, and passive control. Concurrency controls in Btrieve include passive control, record locking, and transaction control. See also explicit record locks, isolation level, and passive control.

concurrent transaction

A type of transaction that allows other transactions to take place simultaneously in different parts of the designated file. A concurrent transaction locks only the portions of the file (record or pages) that are accessed during that transaction, allowing other transactions to do the same in other portions of the file. See also exclusive transaction and implicit locks.

condition

An element of a restriction clause consisting of a condition operator and two expressions. The condition operator defines the criterion for comparing the expressions. You can combine multiple conditions using Boolean operators. See also Boolean operator, condition operator, expression, and restriction clause.

condition operator

An element of a restriction clause that defines the criterion for comparing two expressions. A condition operator can be either a range operator or a relational operator. See also range operator and relational operator.

configuration

The customization of various parts of a computer system for specific use. For example, you can use the Setup utility to configure MicroKernel options such as the number of open files and transaction durability.

constant

A nonchanging value that you specify in a SQL statement. For example, you can specify a numeric constant such as 3.14, a MONEY constant such as $40.00, or a string constant such as George.

You can compare a constant to another value (as in a condition), or you can apply an expression operator to a constant (as in a computed column definition that adds a numeric constant to another value). See also literal.

continuous operation

A MicroKernel feature that allows you to back up data files while they are open and in use. The MicroKernel opens the files in Read-Only mode to allow back up utilities to access the files' static images. The MicroKernel stores changes to the original files in temporary files called delta files. When the backup is complete, the MicroKernel automatically updates the original files with the changes stored in the delta files and deletes the temporary files as soon as all applications close the data file corresponding to that delta file.

control column

A column you specify in a GROUP BY clause to indicate how to group rows. Rows that have the same column value in the control column are grouped.

correlated subquery

A subquery that contains a WHERE or HAVING clause that references a table from the outer query's FROM clause. See also outer query and subquery.

Create Table right

A Pervasive.SQL security right that allows users or user groups to create new tables.

currency

The cursor positioning implied by the data store. Not to be confused with "concurrency," "concurrent" transactions, or the data type CURRENCY which is a 8-byte integer with four implied decimal places. AVOID THIS USAGE. Always try to refer to the current row unless you are talking about the concept of currency.

currency directive

A defined constant, such as RSI_NEXT, that establishes or changes the current record for a given operation.

current row

The last row Pervasive.SQL returned on the previous fetch operation. See also first row, last row, next row, and previous row.

Regarding the Rowset Interface, the record in the physical data store that will be acted on by the next operation, if no specific record or set of records is specified.

cursor

An identifier obtained through a Pervasive.SQL function call that identifies a particular database operation to perform.

A named virtual table defined through the DECLARE CURSOR statement that allows controlled reading and writing of data through SQL.

See also cursor ID and view.

cursor ID

An integer value that references a cursor. See also cursor and view.

cursor stability

An isolation level in which Pervasive.SQL locks portions (rows or pages) of a file during a transaction instead of locking the entire data file, thus allowing concurrent updates. Cursor stability is implemented using the concurrent transaction feature of the MicroKernel Database Engine. See also concurrency controls, concurrent transaction, Exclusive, implicit locks, and transaction.

cursor transaction

A type of nested transaction that enables you to selectively include files in transactions without subjecting other files to transaction control. With cursor transactions, you can diverge your views to see different stages of the same file simultaneously. You can use the cursor transaction in either Exclusive or Concurrent mode.

cycle

A reference path in which a parent table is its own descendant. See also descendant, parent table, reference path, and referential integrity (RI).

Prev
B 		Up Next
D


D

data abstraction

A DBMS can present data to an application in a form that is very different from the physical data structures. The form in which data is presented is called the data abstraction and determines the data model of the DBMS.

data administration statement

One of a group of SQL statements you can use to specify Pervasive.SQL session variables. These variables define blank replacement characters, isolation levels, file open modes, and file owner names. See also data control statement, data definition statement, data manipulation statement, and session variable.

data buffer

A Btrieve function parameter that you use to transfer various information depending on the operation being performed. A data buffer can contain all or part of a record, a file specification, and so forth.

data buffer length

A Pervasive.SQL or Btrieve function parameter that you use to specify how much data is in the data buffer parameter or how much data you expect to be in the data buffer when the function completes.

data compression

A method for reducing the space that a set of data occupies by encoding repeated information in a smaller form. The MicroKernel uses data compression to reduce the disk space of files that are appropriately configured.

data control statement

One of a group of SQL statements you can use to enable and disable security for a database, create users and user groups, and grant and revoke security rights. See also data administration statement, data definition statement, data manipulation statement, security, user, and user group.

data definition statement

One of a group of SQL statements you can use to create and delete dictionaries and indexes; create, modify, and delete tables; and define column attributes. See also data administration statement, data control statement, and data manipulation statement.

data dictionary

A set of tables, called system tables, that contain the complete description of a database. This description includes table and column names, data types, column attributes, index attributes, referential constraints, and security rights. The data dictionary is also called the system catalog. See also system tables.

data dictionary file

The physical file associated with a system table. In Pervasive.SQL, data dictionary files have a .DDF extension and are stored in a format compatible with the MicroKernel. See also system tables.

data file

A collection of related records stored on a disk. A data file is also referred to as a physical file, a MicroKernel data file, or simply a file. In Pervasive.SQL, a data file is presented as a table.

The MicroKernel creates and uses data files in which data is stored in different types of pages. These types include header, data, key, page allocation table (PAT), and variable-allocation table (VAT).

data file location

A directory path that Pervasive.SQL and Btrieve use to locate data files. Each maintains a list of directory paths in a data file path. When you specify a file name or a relative path, Pervasive.SQL and Btrieve locate the data file by appending the file name or relative path to the end of the appropriate directory path in the data file path. See also data file path.

data file path

A path that contains a list of data file locations (directory paths). When you search for a data file, Pervasive.SQL and Btrieve combine the data file name or relative path along with one of the directory paths in the data file path. When you create a data file, Pervasive.SQL and Btrieve combine the data file name or relative path along with the first directory path in the data file path. You specify the data file path when naming a database in the Setup utility. See also data file location.

data manipulation statement

One of a group of SQL statements you can use to retrieve, insert, update, and delete data in tables; define transactions; create and delete views; and create, delete, and execute stored SQL statements. See also data administration statement, data control statement, and data definition statement.

data modification statement

One of a group of SQL statements you can use to add, change, or remove data.

data-only file

A data file in which no keys (and therefore no index pages) exist.

data page

See page.

data type

In Pervasive.SQL, an internal format for a column, such as INTEGER, DATE, or DECIMAL. The data type specifies what kind of data a column contains. For example, a column of data type DECIMAL stores numeric data with a fixed number of decimal places.

database

A set of one or more records or files that contain information on a related subject.

A collection of related information, such as employee data. See also relational database.

database administrator (DBA)

The individual or department responsible for managing databases and for granting user access rights.

database management system (DBMS)

A program or set of programs that create and manipulate database tables and associated files.

database name

A logical name for a database that allows you to refer to it without knowing its actual physical location. The Pervasive.SQL Setup utility allows you to manage database names.

database server

A database management system that runs on a server. A database server is a type of back end. See also back end and database management system (DBMS) .

DBA

See database administrator (DBA).

DBMS

See database management system (DBMS).

deadlock

A condition that occurs when each of two or more tasks is retrying operations on files, pages, or records that the other task has already locked. See also concurrency controls.

default

A preset value or option that a program chooses automatically when no other value is specified. For example, the default directory is the one in which you are currently working.

Default is also a column attribute specifying a value that is consistent with the data type of the column. Pervasive.SQL inserts this value in the column when no other value is specified. See also column attribute.

delete-connected

A table is delete-connected to another table if the deletion of rows in the first table causes the deletion of rows in the second table. Referential constraints determine whether a table is delete-connected.

Delete right

A Pervasive.SQL security right that allows users or user groups to delete rows from a table.

delete rule

A referential constraint that specifies how to handle dependent rows when someone attempts to delete their parent rows. The two forms that the delete rule can take are cascade and restrict. See also cascade and restrict.

delta file

When continuous operation begins, the MicroKernel creates a temporary data file, called a delta file, for each formatted data file. The MicroKernel records in the delta file any changes made to the data file while the backup is taking place. See also continuous operation.

dependent row

In a dependent table, a row whose foreign key value depends on a matching primary key value in the associated parent row.

dependent table

In a database with referential integrity (RI), a table that contains at least one foreign key. See also foreign key.

descendant

A dependent table on a reference path. A descendant can be one or more references removed from the path's original parent table. See also dependent table, parent table, and reference path.

descending

An index attribute that instructs SQL to collate an index in descending order. It is used in CREATE TABLE and CREATE INDEX statements, and in the ORDER BY clause in SELECT statements. See also index attribute.

A key attribute that instructs the MicroKernel to order key values in descending order. See also key attribute.

description file

A sequential file containing information necessary for certain Btrieve Maintenance utility operations.

development level

See SQL-level functions.

dictionary

See data dictionary.

dictionary file

See data dictionary file.

dictionary location

A directory containing a data dictionary.

dictionary name

A name stored in a data dictionary to identify a database element such as a table, view, index, or column.

directory

A disk structure that contains files. A directory may also contain subdirectories.

directory specification

A path that tells an application where to find or store information. The specification may include a server name, volume, drive letter, and directory path.

DLL

See dynamic link library (DLL).

DOS

The DOS, PCDOS, or MSDOS operating system.

drop

To remove an item. For example, you can drop a table, view, index, or user group from a data dictionary.

duplicatable

An index attribute that instructs Pervasive.SQL to allow multiple rows to have the same column value in the indexed column. See also index attribute.

A key attribute specifying that multiple records in a file can have the same key value. See also key attribute.

duplicate key

A single key that identifies more than one record within the data file containing that key. The key's definition specifies that more than one record in the file can contain the same key value.

dynamic link library (DLL)

A program library that contains related modules of compiled code. At runtime, the application reads the functions in the DLL. This process is called dynamic linking.

dynamic link routine

In OS/2 and Windows, a program that the operating system loads on demand (dynamically) and terminates automatically.

Prev
C 		Up Next
E


E

embedded OS

Gor handheld PCs like Windows CE and PalmOS. Embedded software usually refers to software programmed into a non-volatile memory (i.e. flash memory, ROM, etc.), as normally done for devices such as control and handheld computers, in contrast to general-purpose computers.

equal join

See join.

exception table

A table that contains all the orphan rows for a dependent table.

Exclusive

A file open mode. The user that opens a data file in Exclusive mode is the only user that can access that file. See also Accelerated, file open mode, Normal, Read-Only, and Verify.

exclusive isolation level

In Pervasive.SQL, an isolation level in which Pervasive.SQL causes the MicroKernel Database Engine to use the entire data file as the locking unit for transactions. The exclusive isolation level is comparable to using exclusive transactions in Btrieve. See also concurrency controls, cursor stability, Exclusive, exclusive transaction, isolation level, and transaction.

exclusive transaction

A type of transaction that causes the MicroKernel to lock the entire file when you insert, update, or delete a record. The file remains locked until the task ends or aborts the transaction. See also concurrent transaction and implicit locks.

explicit record locks

A type of concurrency control in Pervasive.SQL and Btrieve in which you explicitly lock records by specifying a lock bias value by including the lock request with a Btrieve operation code. Explicit record locks lock the records for update and delete operations but do not allow you to roll back the operations. These locks have no effect within a transaction. See also concurrency controls and implicit locks.

explicit transaction processing

A type of transaction processing in which you must indicate the beginning of a transaction by issuing a START TRANSACTION statement. You end the transaction by issuing a COMMIT WORK or ROLLBACK WORK statement.

expression

An element of a condition in a restriction clause, or an element in a select list. An expression can be one of the following items:

A constant value

A column name (qualified or not)

A scalar function

A computed column that uses one or more of the above

See also computed column, condition, constant, column name, restriction clause, scalar function, and select list.

expression operator

An element of a condition that connects two expressions to form another expression. An expression operator can be an arithmetic operator or a string operator. See also arithmetic operator, Boolean operator, condition, expression, and string operator.

extended file

The MicroKernel creates an extended file when it processes an operation, such as inserting a record into a file, that causes a file to add a page that extends the file size beyond the operating system limit.

extended operation

See Btrieve extended operation.

extension file

A physical file logically concatenated with a base file when the MicroKernel creates an extended file. The MicroKernel treats the base file and extension files as one large file. See also extended file.

Prev
D 		Up Next
F


F

field

In Btrieve, the term field has been used historically to refer to portions of a record that have been designated as segments of a key. Technically speaking however, Btrieve records contain no fields.

file

A collection of records stored on a disk. A file is sometimes also referred to as a physical file.

file control record (FCR)

A page in a data file that contains information1 about the file, such as the file size and page size. The first two pages in any data file are FCR pages.

file definition

A data file description stored in a data dictionary.

file-level locking

See Exclusive.

file open mode

A method of opening a file that places restrictions on how that file can be accessed. The file open modes are Accelerated, Exclusive, Normal, Read-Only, and Verify. See also Accelerated, Exclusive, Normal, Read-Only, and Verify.

file owner name

A password that protects data files from unauthorized access by MicroKernel applications. In Btrieve, you can assign an owner name using the Maintenance utility or by implementing a Set Owner operation.

file preallocation

See preallocation.

file sharing

File sharing is the ability of multiple users or tasks to operate on the same file simultaneously. This technology, known as Single Engine File Sharing (SEFS) and Multi-Engine File Sharing (MEFS) is no longer used by Pervasive.SQL.

See Getting Started with Pervasive.SQL (Workgroup edition) for more information on the successor technology, which involves configuring Workgroup engines to use Gateway locator files.

filter

A restriction you can use when retrieving records with a Btrieve extended operation.

first row

An absolute row position based on the highest index position of the rows in the view. The first and last rows in the view are absolute positions that remain in effect until you compile a new SQL statement for the cursor ID or release the cursor ID. Your first fetch operation must position the cursor to either the first or last row in the index, based on the current sort path. See also current row, last row, next row, previous row, and sort path.

fixed-length data type

A data type with a designated stored length that does not vary from row to row within a table. See also variable-length data type.

fixed-length record

A record that contains no portions of variable length. See also variablelength record.

foreign key

A column or group of columns that references a primary key. The foreign key can be in the same table as the primary key or in a different table. A foreign key cannot contain null column values, and the columns it includes must match the primary key columns in type, length, and order. See also primary key and referential integrity (RI).

free space threshold

A mechanism the MicroKernel uses to determine whether to add data to an existing variable page or to create a new one. A higher free space threshold reduces fragmentation of variable-length records across several pages but uses more disk space. The MicroKernel also stores compressed records (even when fixed-length) on variable pages.

front end

An application that provides an interface between a user and a back end (or engine). For example, SQL Data Manager is a front end to the Pervasive.SQL back end. See also back end.

front-end result set

A cache on the client computer that holds the results of a query.

Prev
E 		Up Next
G


G

group

See user group.

group aggregate function

One of a group of SQL functions you use to return a single result for a given set of column values. The group aggregate functions are AVG, COUNT, MIN, MAX, and SUM. You can use group aggregate functions in a select list or a HAVING clause.

Prev
F 		Up Next
H


H

heading

A column attribute that specifies a column name different from the name you defined for the column in the dictionary. You specify column headings in a CREATE VIEW statement. See also column attribute.

hierarchical data model

A database access method in which the data is represented in the form of a set of tree structures (hierarchies), and the operators provided for manipulating such structures for traversing hierarchic paths up and down the trees. See also relational data model and navigational data model.

Prev
G 		Up Next
I


I

implicit locks

The type of locking in which Pervasive.SQL automatically locks rows, pages, or files according to the isolation level you specify for your transactions. See also concurrency controls, explicit record locks, isolation level, and transaction.

The type of locking in which the MicroKernel automatically locks a record, page, or file according to the type of operation and transaction you are using. In general, the MicroKernel locks a file during an exclusive transaction and a page or record during a concurrent transaction. See also concurrent transaction and exclusive transaction.

index

A column or combination of columns used to sort a table in a particular order and to optimize searches on particular values. See also segmented index.

A key or group of keys that the MicroKernel uses to sort a file. See also key.

index attribute

A characteristic assigned to an index and stored in the data dictionary. The index attributes are: case-sensitivity, modifiability, null value indexing, segmentation, sort order, and uniqueness.

See also case sensitivity, modifiable, null value indexing, segmented, sort order, and uniqueness.

index balancing

The process of searching for available space in sibling index pages when a given index page becomes full, and then rotating values from the full page into the pages that have space available.

index page

See page.

index path

A logical ordering of rows in a table based on indexed column values.

index segment

One column of an index that includes multiple columns. See also index and segmented index.

inner query

See subquery.

Inscribe

A development technology that helps you create and run scripts for use with Pervasive.SQL's stored procedure feature. Inscribe uses Softbridge Basic Language (SBL), a programming language compatible with Visual Basic, to create scripts.

Insert right

A Pervasive.SQL security right that allows a user or user group to add new rows to a table.

insert rule

A referential constraint that specifies how to apply inserts to dependent tables. The insert rule is always restrict, which prevents adding a row to a dependent table if the row contains a foreign key value not contained in the parent table.

integrity control

A method of ensuring that the data in a file is complete and accurate. Pervasive.SQL uses referential integrity, security, and triggers to guarantee data file integrity. The MicroKernel uses shadow paging and concurrency controls to guarantee data file integrity. See also concurrency controls, referential integrity (RI), security, and shadow paging, and triggers.

International Sorting Rules (ISR)

A syntax for specifying an external collation sequence for data files, used in translation.

internetwork

Two or more separate, independent networks joined by a communications bridge. The bridge enables the file servers in separate networks to access each other's data.

isolation level

The level of data locking that Pervasive.SQL employs to provide isolation from other changes to the data during a transaction. The locking level determines the degree to which a task's transaction affects the ability of other tasks to read and update data in the same data file. Pervasive.SQL supports two levels of isolation: cursor stability (in which the locking unit is a row or page) and exclusive (in which the locking unit is a file). See also concurrency controls, cursor stability, Exclusive, implicit locks, and transaction.

Prev
H 		Up Next
J


J

join

A basic relational operation between two or more tables that combines data in the tables based on a comparison of values in specified columns of those tables. Following are the types of joins:

Equal join—a join that occurs when you specify the two join columns as being equal.

Nonequal join—a join that is based on a nonequal comparison of two join columns. The types of nonequal comparisons are less than, greater than, less than or equal, and greater than or equal.

Null join—a join that allows you to retrieve each row from one table (on the left), regardless of whether there is a corresponding row in the table to which you are joining (on the right).

Cartesian product join—a join that associates each row in one table with each row in another table.

Self join—a join in which you specify a table name in the FROM clause more than once.

See also table and view.

join condition

An expression containing a comparison between columns from two different tables. See also expression, restriction clause, and restriction condition.

Prev
I 		Up Next
K


K

key

A column or group of columns on which a table's referential integrity (RI) constraints are defined. The types of keys are primary and foreign. A primary key is a column or group of columns that uniquely identifies each row in a table. A foreign key is a column or group of columns that references a primary key. See also foreign key, primary key, and referential integrity (RI).

A group of bytes (or multiple groups) that is characterized by offset and length (that is, by physical location in a record) and provides a means of direct access to a data value. In addition, a key provides a means of dynamic sorting of the records within a data file. See also index and segmented key.

key attribute

A characteristic assigned to a key. The key attributes are: alternate collating sequence, case-insensitive, descending, duplicatable, manual, modifiable, null, repeating-duplicatable, segmented, and supplemental. See also case sensitivity.

key buffer

A Btrieve function parameter that usually contains the value of a key identified by the key number parameter.

key number

An identifier associated with a specific key in a data file.

key-only file

A data file in which no data pages exist; that is, all records are stored on index pages.

key path

The ordering of key values in an index. A key path may put records in a very different order than how the records appear in the data storage.

key segment

One of the groups of bytes that a segmented key includes. See also key and segmented key.

key type

See data type.

key value

The value of a key (a column or set of column segments) for a specific record. Not to be confused with "key."

keyword

A word that is part of the SQL language. Although keywords appear in uppercase letters in the documentation, they are not case-sensitive. See also clause, SQL command, and SQL statement.

L

last row

An absolute row position based on the lowest index position of the rows in the view. The first and last rows in the view are absolute positions that remain in effect until you compile a new SQL statement for the cursor ID or release the cursor ID. Your first fetch operation must position the cursor to either the first or last row in the view, based on the current sort path. See also current row, first row, next row, previous row, and sort path.

linked-duplicatable

A key attribute that instructs the MicroKernel to store on an index page a key value extracted from the first record of a duplicatable key. Then, rather than storing the second duplicate for the key on the index page, the MicroKernel places a pointer to the second duplicate key at the end of the first duplicate key's record. The MicroKernel places a pointer to the third duplicate key at the end of the second duplicate key's record, and so on. See also key attribute and repeating duplicatable.

literal

A literal is an exact representation of a data value, as opposed to a reference to a column or expression containing that value. A literal can be any valid data type, such as a character literal ('Jones'), a numeric literal (123.4 or 6.02E+23), or a date literal (12/06/95).

loader

A program that loads another program into memory.

local client

Two clients are local clients relative to each other if they run under the same MicroKernel. A given client can be both local relative to some clients (those running under the same MicroKernel) and remote relative to other clients (those running under different MicroKernels) at the same time.

location transparency

A database feature that enables a user to access a database without specifying its physical location.

lock

A mechanism that prevents other tasks from changing the data you currently have locked. See also concurrency controls, explicit record locks, implicit locks, isolation level, no-wait lock, and wait lock.

locking unit

The amount of data Pervasive.SQL blocks from other tasks until your transaction is complete. Pervasive.SQL uses locking to prevent other tasks from changing the data you are currently changing. See also cursor stability, Exclusive, isolation level, and transaction.

logger

A task that calls the xShareSessionID function for its login session. xShareSessionID allows a task to flag its login session as shareable so that other tasks can share the resources associated with this login. See also session and sharer.

logging in

The act of connecting to a data dictionary. If security is enabled, logging in identifies the user so that Pervasive.SQL can enforce the appropriate security rights. Users log in using a task (an instance of an application).

Pervasive.SQL allows a task to have multiple logins or share the login session of another task. Only one login session can be active within a particular task. Thus, only the cursor(s) defined for the current login session is active. A Pervasive.SQL security right required for logging in to a data dictionary. All users must log in to a dictionary before accessing data. See also logger, session, and sharer.

logical design

The second phase of database design that involves creating tables, columns, and keys based on the relational model that meet the requirements identified in the conceptual design.

logical operator

An operator such as AND, OR, or NOT used in an expression that yields a true or false value.

logical unit of work

See transaction.

login identifier

A unique number that identifies a particular application operating at a workstation. Pervasive.SQL assigns a login identifier to each application that logs in.

Login right

A Pervasive.SQL security right required for logging in to a data dictionary. All users must log in to a dictionary before accessing data.

login session

See session.

log key

The key that the MicroKernel uses to uniquely identify each record in a file for transaction logging purposes. If a file does not contain a unique (non-duplicatable key), the MicroKernel cannot track the file in the log. Using the Setup utility, you can configure the MicroKernel to add a unique system-defined log key to files during creation.

log segment

A file that comprises part of the MicroKernel transaction log. All log segments have a.LOG extension. The MicroKernel names log segments with consecutive, 8-character hexadecimal names, such as 00000001.LOG, 00000002.LOG, and so on.

Prev
J 		Up Next
M


M

manual key

See null key.

many-to-many relationship

Occurs when many rows in one table can relate to many rows in another table.

mask

As a pure ODBC driver, Pervasive.SQL does not support the concept of masks. All data are displayed and transmitted in native ODBC format. Each application must specify how to display the data.

Master user

The user who has all rights to the dictionary after security is enabled. The user name Master is case-sensitive.

MicroKernel Database Architecture

The unique modular framework for Pervasive Software's database engine products. The architecture consists of access modules such as Btrieve and Pervasive.SQL, both of which plug into the MicroKernel. This architecture allows applications that use different data access methods to share common data.

MicroKernel Database Engine

The foundation of the MicroKernel Database Architecture. Provides low level database functions that include physical data management, data caching, transaction processing, and data integrity enforcement.

modifiable

An index attribute that determines whether you can modify an index column value after Pervasive.SQL stores the associated row. See also index attribute.

A key attribute that determines whether you can modify a key value after Btrieve stores the associated record. See also key attribute.

multi-byte character set

A character set in which characters may be represented in an arbitrary number of bytes.

Multi-Engine File Sharing (MEFS)

See file sharing. This technology is no longer used by Pervasive.SQL.

multithreading

Concurrent, or interleaved, execution of multiple threads of execution.

Prev
K 		Up Next
N


N

named database

A database with a logical name that allows users to identify it without knowing its actual location. When you name a database, you associate that name with a particular dictionary directory path and one or more data file paths. When you log in to Pervasive.SQL using a database name, Pervasive.SQL uses the paths to find the database's dictionary and data files. See also database name.

named index

In Pervasive.SQL, an index you name using the CREATE INDEX command. You can delete a named index, but you cannot delete an unnamed index (an index you create using a WITH INDEX clause in a CREATE TABLE statement).

NanoKernel Database Engine

Provides a small, highly portable database kernel targeted at applications in which footprint size is a key consideration. The NanoKernel runs on top of an interface to the resident real-time operating systems (RTOS) to provide database engine service.

native character set

The character set in which text submitted to and generated by the Pervasive.SQL engine is assumed to be represented. This set is defined by the host environment of the system on which it is running.

navigational data model

The data access method used to navigate up, down, and sideways through data records. This model provides direct control and allows a developer to optimize data access based on knowledge of the underlying structure of the data. Btrieve is a navigational database engine. See also hierarchical data model and relational data model.

NDS

NetWare Directory Services.

nested query

See subquery.

nested transaction

A type of transaction that enables you to divide complex transactions into smaller subtransactions. With nested transactions, you can partially roll back changes in a transaction by committing or undoing subgroups of transactions while the main transaction remains unaffected. You can use the nested transaction in either Exclusive or Concurrent mode.

NetWare Loadable Module (NLM)

A program that runs on a NetWare 3. x or 4.x server. You can load or unload NLMs while the server is running. NLMs become part of the operating system and access NetWare services directly.

network administrator

The individual or department responsible for the communications link between a user's computer and network servers.

next row

Based on the current sort path, the row that follows the set of rows returned on the previous fetch operation. If you use Option 0 to fetch multiple rows, the next row for the subsequent fetch operation is immediately adjacent to the current row. See also current row, first row, last row, previous row, and sort path.

NLM

See NetWare Loadable Module (NLM).

nonequal join

See join.

non-null index

An index that does not include null column values. See also null.

Normal

The default file open mode. Using a server MicroKernel, Normal mode allows shared read/write access to data files. In Normal mode, the MicroKernel performs its standard integrity processing when it updates the data files.

See also Accelerated, Exclusive, file open mode, file sharing, Read-Only, and Verify.

normal form

A set of criteria to measure the level at which a database conforms to certain basic rules of data organization.

normalization

The process of transforming your database into a particular normal form by applying a set of rules.

no-wait lock

A type of explicit record lock in which the MicroKernel returns control to your task if it cannot lock the record for any reason (for example, because another task has already locked that record).

In Btrieve, you request a no-wait lock by specifying a lock bias value on a Btrieve operation code.

See also explicit record locks and wait lock.

null

Specifies an unknown column value, or specifies that the column value is not applicable.

null join

See join.

null key

A key column that can be a user-defined null character. For null keys, the MicroKernel does not include a record in the index if each byte of the record's key matches the null column value.

A key field that can be a user-defined character. The MicroKernel allows two types of null keys: any-segment (called a manual key in earlier Btrieve versions) and all-segment (simply called a null key in earlier Btrieve versions).

An any-segment null key does not include a particular record in the index if the value of any key segment of that record matches the null value.

An all-segment null key only excludes a particular record from the index if the value of all key segment of that record matches the null value.

null value indexing

An index attribute that determines whether Pervasive.SQL includes those columns that contain the predefined null value in the index. See also index attribute.

A key attribute that determines whether Btrieve includes those fields that contain the predefined null value in the index. See also key attribute.

Prev
M 		Up Next
O


O

object property

An attribute of one of the following objects: service provider, database, session, rowset. Properties include such attributes as the maximum length of a table name, the type of NULLs supported, numeric precision, maximum column size, etc.

object-oriented data model

The data access method in which data is represented as objects that represent real world entities such as students, courses, and grades. These objects consist of both data and data functions, such as creating or deleting objects.

one-to-one relationship

Occurs when one row can relate to only one instance of a row in another table.

one-to-many relationship

Occurs when one row can relate to many rows in another table.

Open mode

See file-level locking.

operand

An input value for a restriction clause, condition, expression, or scalar function. Depending on the context, an operand may be the result of a previous operation.

An operand is also a value to which an operation is applied. See also condition, expression, restriction clause, and scalar function.

operation

A specific action that manipulates a data file (such as Delete, Create, or Get Equal). An operation is performed when an application calls one of the Btrieve functions.

operator

Part of a restriction clause, condition, or expression. The types of operators are Boolean operators, condition operators (which include relational operators and range operators), and expression operators (which include arithmetic and string operators). See also arithmetic operator, Boolean operator, condition operator, expression operator, range operator, relational operator, and string operator.

orphan row

In a dependent table, a row with a foreign key value that does not have a corresponding parent key value.

outer join

See join.

outer query

The main query of a SQL statement that contains a subquery. See also correlated subquery and subquery.

owner name

See file owner name.

Prev
N 		Up Next
P


P

page

A unit of a data file. A page is the smallest unit of storage that the MicroKernel moves between main memory and disk. A page contains a multiple of 512 bytes (up to 4,096 bytes).

The MicroKernel uses the following types of pages:

Data page—contains fixed-length records (or the fixed-length portions of variable-length records)

Index page—contains key values and pointers to the associated records for those values (which reside on a data page)

Variable page—contains variable-length portions of records

See also data file, fixed-length record, key, and variablelength record.

Page Allocation Table (PAT)

Part of the MicroKernel's internal implementation for tracking pages in a file. See also shadow paging.

page-level locking

A level of data locking that causes the MicroKernel to lock individual data pages during a transaction instead of locking the entire file. This permits multiple users to access different pages in the data file from within a transaction. In Pervasive.SQL, page-level locking is called cursor stability. See also Exclusive and transaction.

parameter

An item of information that a program, utility, or API may need in order to perform a particular operation. See also substitution variable.

parent row

In a parent table, a row whose primary key value currently matches a foreign key value. See also dependent row.

parent table

In a database with referential integrity (RI), a table containing a primary key referenced by a foreign key. See also dependent table.

parsing

The mechanism the SQL engine uses to analyze the SQL statements that are passed to it and determine what internal operations it must perform to execute the SQL statement.

passive control

A type of concurrency control in which your task does not perform any type of locking. If another task modifies a record since you originally fetched it, you must fetch the record again before you can perform an update or delete operation. See also concurrency controls.

path

The components that uniquely identify a file or directory. For local files, these components might include a drive letter, directory levels, and a file name. For network files accessed from a client, these components might include the server name, volume, directory path, and file name.

peer-to-peer networks

Enable machines to access files that reside on other machines. Multiple users running applications on one machine can access database files stored on another machine.

physical design

The third phase of database design that involves specifying data types, indexes, CREATE statements, and sizes of the physical files representing the tables.

position block

A MicroKernel data file handle.

positioning

A record's location relative to the locations of the records preceding and following it. The two types of positioning are physical and logical. Physical positioning refers to the three relevant record locations in the data portion of a data file; logical positioning refers to the three relevant record locations in the key index of a data file.

preallocation

A method for allocating a specific amount of disk space for a file when you create the file. This space is reserved for future expansion of the file.

pre-imaging

Storing the image of a data file page before updating a record on that page. Pre-6.0 engines use preimaging to provide recovery capabilities in case a file is damaged or a system failure occurs during an update to the file.

previous row

Based on the current sort path, the row that precedes the set of rows returned on the previous fetch operation. See also current row, first row, last row, next row, and sort path.

primary file

The original part of a partitioned file before a Btrieve Extend operation was performed.

primary key

A column or group of columns whose column value (or collective column value) uniquely identifies each row in a table. Primary keys must be unique, non-null indexes. See also foreign key and referential integrity (RI).

procedure

See stored procedure.

procedure owned cursor

A SQL cursor defined inside a stored procedure.

procedure owned variable

A SQL variable you define inside a stored procedure.

projection

See column list.

Public group

A special user group you can use to specify the minimum set of security rights every user has when accessing a dictionary on which security is enabled. You cannot delete the Public group. All users are automatically members of the Public group and cannot be deleted from it.

Prev
O 		Up Next
Q


Q

qualified column name

A column name preceded by a column qualifier. A qualified column name allows you to differentiate between column names that are repeated in different tables. See also column name and column qualifier.

query

A request for information from a database. Through SQL, you use a SELECT statement to specify the query.

Prev
P 		Up Next
R


R

range

A column attribute that defines a range of valid values for a column.

range checking

See validation.

range operator

A type of condition operator that compares the value of an expression to a specified range of values. Examples of range operators for SQL statements are CONTAINS and IS NULL. See also condition, condition operator, expression, and restriction clause.

Read-Only

A file open mode that does not allow you to insert, update, or delete records. See also Accelerated, Exclusive, file open mode, Normal, and Verify.

read-only view

A view in which you cannot insert, update, or delete rows.

real-time operating system

A deterministic operating system (embedded or not) designed for use in a real-time computer system.

RTOS

See real-time operating system

record

A set of logically related data items in a MicroKernel data file. For example, a record might contain an employee's name, address, phone number, rate of pay, and so forth. Multiple records make up a data file.

record locking

A type of concurrency control that enables an application to lock the record it is accessing within a file. Other users can read the record, but no other user can lock, update, or delete the record until the application that holds the lock releases it.

reference

A foreign key referring to a primary key. See also foreign key, primary key, and referential integrity (RI).

reference path

A particular set of references between dependent and parent tables. See also referential integrity (RI).

References right

A Pervasive.SQL security right that allows users or user groups to create foreign keys that refer to the primary key of a table.

referential constraints

A set of rules that define the relationships between tables in a database.

referential integrity (RI)

The assurance that when a column (or group of columns) in one table refers to a column (or group of columns) in another table, changes to those columns are synchronized. If you define RI on a bound database, the MicroKernel enforces the database's defined security, triggers, and referential integrity, regardless of the method (such as Btrieve or Pervasive.SQL) you use to access the data. See also bound database.

relation

See table.

relational database

Related data that is systematically organized into a set of tables.

relational database management system (RDBMS)

Organizes and provides access to a relational database. A program for general-purpose data storage and retrieval.

relational data model

The data access method in which data is represented as collections of tables, rows, and columns. The relational model insulates the developer from the underlying data structure and presents the data in a simple table format. See also navigational data model and hierarchical data model.

relational operator

A type of condition operator that compares a column value with either another column value or a constant. The relational operators are less than (<), greater than (>), equal to (=), less than or equal to (<=), greater than or equal to (>=), and not equal to (!= or <>). See also condition, condition operator, and expression.

relative path

A partial path that Pervasive.SQL and Btrieve append to a data file location in order to locate a data file. See also data file location.

remote client

Two clients are remote clients relative to each other if they run under different MicroKernels. A given client can be both local relative to some clients (those running under the same MicroKernel) and remote relative to other clients (those running under different MicroKernels) at the same time.

repeating duplicatable

A key attribute that instructs the MicroKernel to store key values with the data and in the index. See also key attribute and linked-duplicatable.

requester

A program that resides on a client machine and passes requests from a client application to a server-based engine. See also client.

requester interface

A program that resides on a client machine and passes requests from an application to a requester.

restrict

A form of the delete, insert, or update rule:

The delete restrict rule prevents a row in a parent table from being deleted if that row is a parent row for a foreign key in another table.

The insert restrict rule prevents a row from being added to a dependent table if the foreign key value the row contains does not have an equivalent primary key value in the applicable parent table.

The update restrict rule prevents a row in a dependent table from being updated if the foreign key value that row contains does not have an equivalent primary key value in the applicable parent table.

See also dependent table and parent table.

restricting rows

Limiting the number of rows with which you will work by setting conditions for specific columns. For example, you can restrict rows in a mailing list to retrieve the rows for only one particular state.

restriction clause

Part of a SQL statement that defines one or more search criteria to qualify the data that the SQL statement affects. A restriction clause defines either a restriction condition or a join condition. You can include a restriction clause in the following places:

The WHERE or HAVING clause of a SELECT statement or SELECT clause

The WHERE clause of an UPDATE or DELETE statement

See also join condition and restriction condition.

restriction condition

Criteria specified in a restriction clause to compare an expression that references a column value to either a constant or another expression that references a column value in the same table. See also expression, join condition, and restriction clause.

result set

A set of rows retrieved from one or more tables or views during a query.

result table

See result set.

RI

See referential integrity (RI).

roll back

Aborting a transaction and undoing all the changes made to a file during the transaction, thus restoring the database to the state it was in before the transaction began. See also commit and transaction.

roll forward

Recovering changes made to a data file between the time logging is initiated and a system failure occurs. See also archival logging.

roll in

Writing to an original data file all the changes made to the corresponding temporary file during the continuous operation backup period. When the backup is complete, the MicroKernel automatically updates the original file with the changes and deletes the temporary file. See also continuous operation.

router

A program through which a client application communicates with a database or gateway. The router enables a logical connection between a client and a database or gateway. Once this connection is established, the client application uses the router to send SQL or Btrieve requests to the database or gateway and to receive results.

row

A set of logically associated columns in a view. For example, a row may contain some or all columns from a single table. Alternatively, it may contain columns from several tables that are joined to form a view.

Rowset

Can be a base table, a database file, or a temporary table defined by a relational join expression. A rowset allows you to view an entire table or a subset of any specified subset of a table. An application can create subsets limited by a column and/or row.

Rowset Interface

A portable, platform independent interface that provides relational and transactional access through the rowset architecture.

RSI

See Rowset Interface .

Prev
Q 		Up Next
S


S

savepoint

In a SQL transaction, you can define additional markers called savepoints. Using savepoints you can undo changes after a savepoint in a transaction and continue with additional changes before requesting the final commit or abort of the entire transaction.

scalability

The ability of a product to operate in computing environments of varying capabilities. No change to source code or relinking is necessary to scale from workstation to client/server operation.

Pervasive.SQL

Pervasive Software's relational and transactional database that allows users to run applications designed to manage shared data files.

scalar function

One of a group of SQL functions you can use to perform an operation on a particular data type, such as returning the length of a string, truncating a numeric value, or returning the day or hour value. You can specify scalar functions in statements that allow computed columns in expressions.

scripting

A programming language for developing routines that you can execute directly or within an application.

security

A means of protecting a database by limiting access to it. You can define data security using SQL statements or Btrieve owner names. For example, you can allow a user to see only certain columns in a table, or you can allow the user to see all the columns in a table but not update them.

security group

See user group.

Security right

A right that defines what operations a user can perform on a database. The Login and Create Table rights determine whether the user can log in to the dictionary and create tables. The access rights determine the user's ability to access tables in a dictionary. The access rights are Select, Update, Insert, Delete, Alter, References, and All. See also access right, All right, Alter right, Create Table right, Delete right, Insert right, Login right, References right, Select right, and Update right.

segmented

An index or key attribute that indicates whether the index or key is segmented (whether it consists of a group of columns combined into a single index or key). See also index, index attribute, key, key attribute, segmented index, and segmented key.

segmented index

An index consisting of multiple columns. The columns can be of different data types and need not be adjacent in the table. See also index.

segmented key

A key consisting of multiple groups of bytes characterized by offset and length. Key segments can be of different extended key types and do not have to be contiguous in the record. See also key.

select list

A list of select terms. See also select term.

Select right

A Pervasive.SQL security right that allows users or user groups to query tables for information.

select term

A column, computed column, or group aggregate function that a SELECT statement retrieves or computes.

self join

See join.

self-referencing table

A table that is its own parent table. In other words, the table contains a foreign key that references its primary key. See also parent table and referential integrity (RI).

Sequenced Packet Exchange (SPX)

A Novell communication protocol that monitors network transmission to ensure successful delivery. SPX runs on top of Novell's Internetwork Packet Exchange (IPX) protocol.

server

A computer that is on a network and provides services to client applications.

server-based MicroKernel

The server-based version of the MicroKernel Database Engine.

See also MicroKernel Database Engine .

session

The period during which a task is logged in to a database. A task can create multiple login sessions by logging in more than once, or the task can share the login session of another task. See also logger and sharer.

session cursor

A SQL cursor you define outside of a procedure.

session identifier

An integer value that identifies a Pervasive.SQL login session. The integer value is a value from 0 to the maximum number of concurrent login sessions that Pervasive.SQL allows. See also session.

session variable

A SQL variable you define outside of a stored procedure.

shadow paging

In a data file, the process of changing a copy of a page (called a shadow page) instead of changing the current page. When the changes are committed, the shadow page becomes the current page and the current page is ready for reuse. See also Page Allocation Table (PAT).

sharer

A task that shares a logger's login session. A sharer does not need to be logged in to share the logger's login session. However, the sharer can also have its own login session. See also logger and session.

sibling networks

Two or more equal networks branching off the same node in an internetwork.

significant blanks

Blanks that appear at the end of a string and that Pervasive.SQL treats as part of the data when displaying the string, determining its size, or comparing it to another string.

Single Engine File Sharing (SEFS)

See file sharing. This technology is no longer used by Pervasive.SQL.

sort file

See temporary sort file.

sort order

An index attribute that determines how Pervasive.SQL sorts index column values. By default, Pervasive.SQL sorts index column values in ascending order (from smallest to largest).

A key attribute that determines how the MicroKernel sorts key values.

See also index attribute key attribute.

Sort order is also the order by which you sort a view when using an ORDER BY clause. You can sort the view by one or more columns, and the columns can be either index columns or nonindex columns. For example, if you sort a view in ascending order using a string column, the rows that contain a column value beginning with the letter A appear first in the view.

sort path

The ordering path of the view, which the ORDER BY clause or the optimizer determines if you did not specify an ORDER BY clause.

SPX

See Sequenced Packet Exchange (SPX).

SQL

See Structured Query Language (SQL).

SQL command

The initial keyword(s) in a SQL statement. For example, in the following SQL statement, SELECT is the SQL command:

SELECT * FROM Faculty

See also clause, keyword, and SQL statement.

SQL-level functions

A development level that serves as a high-level interface between your application and the MicroKernel Database Engine. The SQL-level functions allow your application to use SQL statements to create, access, and modify relational database systems. Examples of SQL-level functions are SELECT, INSERT, and DELETE.

SQL statement

A complete Pervasive.SQL request that contains a SQL command, any required values, and any required (or optional) clauses. See also clause, keyword, and SQL command.

statement

See SQL statement.

stored procedure

A group of logically associated programming steps you can invoke with a single SQL statement. Once invoked, SQL stored procedures are executed in their entirety without internal communication between a host language program and the SQL engine.

stored view

A view whose definition you have placed in the data dictionary for later retrieval. In most statements, you can use the name of a stored view in place of a table name.

string

A series of characters (as opposed to a number), or a category of data types used to store strings.

string operator

An expression operator you can apply to fixed-length string columns to form a computed string column. The string operators are append (*), concatenate without spaces (+), and concatenate with spaces (++). See also expression operator.

Structured Query Language (SQL)

A standard set of statements you can use to manage information stored in a database. For example, these statements allow you to retrieve, insert, update, or delete data. The types of SQL statements are as follows:

  • Data administration
  • Data control
  • Data definition
  • Data manipulation

See also data administration statement, data control statement, data definition statement, and data manipulation statement.

subquery

A SELECT statement that is contained within the WHERE clause of a SELECT, UPDATE, or DELETE statement, or in the HAVING clause of a SELECT statement. A subquery is also called an inner query or a nested query. See also correlated subquery and outer query.

substitution variable

In a SQL statement, an identifier that instructs an interface such as ODBC or OLE DB to substitute a value in place of the identifier when executing the statement, using APIs or methods that belong to that interface. The symbol ? identifies a substitution variable in a SQL statement.

supervisor

The person responsible for the administration and maintenance of a network, a database, or both. A supervisor has access rights to all volumes, directories, and files.

supplemental index

In Btrieve 5.x, an index added to a file after the file was created. In 5.x, you can delete a supplemental index, but you cannot delete an index that was created when the file was created. In Btrieve 6.0 or later, supplemental indexes are referred to as repeating duplicatable indexes.

symmetric multiprocessing (SMP)

SMP systems consist of multiple CPUs within a single machine that share a common address space. The operating system can allocate processes and threads to the various processors. Typical SMP systems consist of two to six CPUs.

SMP support in an application enables the application to use multiple processors. This requires that the application be multi-threaded so that the different threads of the application can be executed on separate processors.

system catalog

See data dictionary.

system data

A set of bytes the MicroKernel can add to files for logging purposes. System data includes a non-duplicatable (unique) key that the MicroKernel uses to track individual records for logging.

system-defined log key

A key the MicroKernel can add to files for transaction logging purposes. System keys are 8 bytes long and non-duplicatable (unique). Using the Setup utility, you can configure the MicroKernel to add system data, including a system-defined log key, to files upon creation. System-defined log keys are necessary for the MicroKernel to log files that do not contain at least one unique (non-duplicatable) key.

system tables

In a data dictionary, tables that contain descriptions of the database. For example, these tables contain information about your data, tables, views, and system security, as well as referential integrity (RI). Each system table is associated with a data dictionary file. See also data dictionary and data dictionary file.

system transaction

A bundle of successful non-transactional operations and/or exclusive or concurrent transactions that the MicroKernel uses to gain better performance and to aid data recovery. Unless a system failure occurs, system transactions are transparent to clients. Unlike user transactions (exclusive or concurrent), users have no control over system transactions; users cannot abort system transactions.

Do not confuse system transactions with exclusive or concurrent transactions. "System transaction" is a term specific to data recovery. Throughout this manual, the term "transaction" refers to an exclusive or concurrent transaction (also known as a user transaction).

Prev
R 		Up Next
T


T

table

A collection of data formatted in rows, where each row consists of column values. Vertical collections of column values in the table form columns, and each column contains one type of information, such as salary or revenue. Each row contains the same number of items and type of information as every other row in the table. The two types of tables are base tables and views. See also base table, column, column value, row, and view.

table definition

A table description stored in a data dictionary. See also data dictionary.

task

An instance of an application. See also application.

Transmission Control Protocol (TCP)

A connection-oriented communication protocol that uses the Internet Protocol (IP) for packet delivery.

temporary sort file

A temporary file that Pervasive.SQL builds if you sort a view by a column that is not defined as an index.

temporary file

A transient data file that improves performance for the duration of a task.

temporary view

A view that you do not name or store in the data dictionary. You create a temporary view using a SELECT statement, and you define a stored view using a SELECT clause within a CREATE VIEW statement. See also view.

thread

A separate unit of execution within a program. See also multithreading.

thunking

Thunking is the transition from executing 32-bit code to executing 16-bit code, or from executing 16-bit code to executing 32-bit code. The piece of code that makes the transition is called a thunk. This thunk is a mapping layer that converts data to allow 32-bit code and 16-bit code to communicate with each other. A thunk allows applications to use controls of another memory model without the application knowing the memory models are different.

transaction

A group of related operations that must be performed together and in a particular order to ensure logical data integrity.

transaction atomicity

The assurance that the MicroKernel completes all operations of a user transaction. If the MicroKernel cannot complete all operations, the MicroKernel rolls back all the operations so that the data files are in the same state as before the transaction began.

transaction control

A type of concurrency control that instructs the MicroKernel to lock a file (or the modified pages of a file) that an application opens or accesses within a Btrieve transaction. The file remains locked until the transaction ends or aborts. Other applications can open and read from the file while it is locked but cannot perform write operations or transactions on the file.

transaction durability

The assurance that the MicroKernel finishes writing to the transaction log when a client ends a transaction and before the MicroKernel returns a successful status code to the client. Because a user transaction is not necessarily the last element in a system transaction, following a system failure, the user transaction could be rolled back, even though the MicroKernel returns Status Code 0 to the client for the End Transaction operation. The MicroKernel does not guarantee transaction durability on files opened in Accelerated mode.

transaction log

One or more physical files, called log segments, that the MicroKernel uses to ensure transaction durability.

Transaction Tracking System (TTS)

A NetWare fault tolerance system that protects files from corruption by backing out incomplete transactions that result from a failure in a network component. Pre-6.0 Btrieve uses TTS to protect data files on a NetWare server. TTS must be active at the server, and the data files must be flagged as transactional.

Btrieve for NetWare 6.0 and later uses TTS somewhat differently. Applications can flag a file as transactional when they want to signal the MicroKernel that the file's integrity must be guaranteed. However, the MicroKernel does not actually use TTS to ensure integrity because TTS is not as fast as other means when used in conjunction with concurrent transactions. Instead, when the MicroKernel notices the TTS flag, it forces pages to be written chronologically (in order to ensure that Btrieve recovery mechanisms work properly).

Workgroup engines disregard the TTS flag.

translation

Mapping characters in one character set to those in another. Translation is necessary for the database engine to support string types other than the engine's native character set.

triggers

Dictionary objects that define a specific action for the DBMS to take whenever modifications to a particular data file take place. For example, you can define a trigger to call a stored procedure when an inventory quantity drops below a specified minimum.

TTS

See also transaction control and Transaction Tracking System (TTS).

tuple

See row.

Prev
S 		Up Next
U


U

unbound database

A database in which either the dictionary files are not bound or only some files are bound. An unbound database can be named or unnamed. See also bound database and bound file.

uniqueness

An index attribute that determines whether multiple rows can have the same index column value.

A key attribute that determines whether multiple records can have the same key value.

See also index attribute.

See also key attribute.

Update right

A Pervasive.SQL security right that allows users or user groups to update information in specified columns or tables.

update rule

A referential constraint that specifies how to apply updates to dependent tables. The update rule is always restrict, which prevents the MicroKernel from updating a row in a dependent table if the foreign key value for that row does not have an equivalent primary key value in the applicable parent table.

user

A person authorized to log in to a database when security is installed. If security is not installed, a user is any person that logs in to the database.

user group

Multiple users defined as a set. All the users in a group have the same security rights.

Prev
T 		Up Next
V


V

validation

A column attribute that specifies criteria for the acceptability of data that you add to a database. Pervasive.SQL can ensure that the data you enter is between specified minimum and maximum values (range checking), that it consists of specified characters (character validation), or that it matches a specified set of values (value validation). See also column attribute.

value

See column value.

value validation

See validation.

variable-length data type

A data type with a stored length that can vary from row to row within a table. See also fixed-length data type.

variablelength record

A record in a data file that contains a variablelength portion and a fixed-length portion. The fixed-length portions must be the same size in all the records in a given file, but the variablelength portions may vary in size. Consequently, the overall lengths of variablelength records may vary. See also fixed-length record.

variable page

See page.

Variable-Tail Allocation Table (VAT)

An array of pointers to the variable-length portion of Btrieve records. The VAT is implemented as a linked list.

Verify

A file open mode that causes the operating system to verify all write operations to a file. See also Accelerated, Exclusive, file open mode, Normal, and Read-Only.

view

A selection of rows and columns from one or more tables. A view can be treated as if all the data exists in a single table. The columns in a view can be from the same table or from different tables that have been joined together. You can create a view for a single use, or you can name and store it in the data dictionary for later retrieval. See also join and table.

virtual column

See computed column.

virtual table

A view or relation whose rows and columns do not have a one-to-one correspondence with base rows and columns, due to a join, aggregate, computed field, etc.

Prev
U 		Up Next
W


W

wait lock

A type of explicit record lock in which Pervasive.SQL and Btrieve do not return control to your task until they have obtained the lock on the record you requested.

In Btrieve, you request a wait lock by specifying a lock bias value in operation calls.

See also explicit record locks and no-wait lock.

workstation MicroKernel

A version of the MicroKernel that runs as a standalone engine. All processing is performed on the workstation, and access to all files is through operating system calls. The operating system calls are either executed locally or redirected to the server. See also Btrieve and server-based MicroKernel.

Prev
V 		Up Next


Glossary

This glossary contains terms referenced throughout the Pervasive.SQL documentation set. Click a letter, or click Index to look up terms directly.

If you encounter a Pervasive term not in this glossary, please e-mail docs@pervasive.com

A | B | C | D | E
F | G | H | I | J
K | L | M | N | O
P | Q | R | S | T
U | V | W |  |

Prev Next
A