DataBlade Developers Kit User's Guide
Glossary
Glossary
access method
A set of server routines that the database server uses to access and manipulate an index or a table. B-tree is the default secondary access method used by DataBlade modules. Some DataBlade modules have their own access methods, with routines defined by the module.
See also
primary access method
,
secondary access method
.
access privilege
Permission for a user to perform an operation in a specific database, table, table fragment, or column.
ActiveX value object
A Microsoft Common Object Model (
COM
)-compliant object that contains a client-side copy of an opaque type and its support routines.
See also
value object
.
aggregate function
A function that performs a mathematical operation on a set of rows selected by a query and returns a single value that contains information about those rows. Aggregates use one or more support functions to perform the aggregate operations. Examples of built-in aggregates include
SUM
,
AVG
, and
COUNT
.
arithmetic function
A function that returns a value by performing a mathematical operation on one or more arguments.
B-tree index
A type of index that uses a balanced tree structure for efficient record retrieval. B-tree indexes store key data in ascending or descending order.
BLOB
A smart large object data type that stores any kind of binary data, including images. The database server performs no interpretation on the contents of a
BLOB
column.
See also
smart large object
.
built-in cast
A cast that is built into the database server. A built-in cast performs automatic conversions between different built-in data types.
built-in data type
A fundamental data type defined by the database server: for example,
INTEGER
,
CHAR
, or
SERIAL8
.
built-in function
A predefined,
SQL
-invoked function that provides some basic arithmetic and other operations, such as
cos()
,
log()
, or
today()
.
cast
A mechanism that the database server uses to convert data from one data type to another. The server provides built-in casts that it performs automatically. Users can create both implicit and explicit casts.
See also
cast support function
,
explicit cast
,
implicit cast
,
built-in cast
.
cast support function
A function that is used to implement an implicit or explicit cast by performing the necessary operations for conversion between two data types. A cast support function is optional unless the internal storage representations of the two data types are not equivalent.
class
A category of objects that have common properties and are managed through a specific system table. Informix database classes include access methods, aggregates, casts, routines, operators, tables, and types.
client files
The files that reside on a client workstation that accesses a DataBlade module's objects. Not all DataBlade modules have client files. Examples include client applications or client libraries that are specific to the DataBlade module.
CLOB
A smart large object data type that stores blocks of text items, such as
ASCII
or PostScript files.
See also
smart large object
.
collection
An instance of a collection data type; a group of elements of the same data type stored in a
SET
,
MULTISET
, or
LIST
type constructor.
See also
collection data type
.
collection data type
A complex data type that groups values, called elements, of a single data type in a column. Collection data types consist of the
SET
,
MULTISET
, or
LIST
type constructor and an element type, which can be any data type, including a complex data type.
commutator function
A Boolean function that accepts the same two arguments, in reverse order, as another Boolean function, and returns the same result. The query optimizer might choose the commutator function if it executes more quickly in a given query than the specified function.
See also
negator function
.
complex data type
A data type that is built from a combination of other data types using an
SQL
type constructor or the
CREATE ROW TYPE
statement, and whose components can be accessed through
SQL
statements. Complex data types include collection data types and row data types.
concurrency
The ability of two or more processes to access the same database simultaneously.
constructed data type
A complex data type created with a type constructor: for example, a collection data type or an unnamed row data type.
constructor
See
type constructor
.
data file
A flat file containing data to be loaded into the database.
data type
See
built-in data type
,
extended data type
.
database object
A discrete entity within a database, such as a data type, a routine, a table, an index, or a view. Users can define database objects with the
CREATE
statement.
DataBlade API
The C application programming interface (
API
) for your Informix database server. The DataBlade
API
is used for the development of DataBlade modules. The DataBlade
API
contains routines to process data in the database server and return the results to the calling application.
DataBlade module
A group of database objects and supporting code that extends an object-relational database to manage new kinds of data or add new features. A DataBlade module can include new data types, routines, casts, access methods,
SQL
code, client code, and installation programs.
distinct data type
A data type based on an existing opaque, built-in, distinct, or named row data type, which is known as its source type. The distinct data type has the same internal storage representation as its source type, but it has a different name. To compare a distinct data type with its source type requires an explicit cast. A distinct data type inherits all routines that are defined on its source type.
element
A member of a collection. See also
collection data type
.
element data type
The data type of the elements in a collection.
explicit cast
A cast that requires a user to specify the
CAST AS
keyword or cast operator ( :: ) to convert data from one data type to another.
See also
cast
,
cast support function
.
extended data type
A data type that is not built-in: namely, a collection data type, row data type, opaque data type, or distinct data type.
external function
An external routine that can accept one or more arguments and returns a single value.
external procedure
An external routine that can accept one or more arguments, but does not return a value.
external routine
A routine written in a language external to the database (for example,
C
), whose body is stored outside the database but whose name and parameters are registered in the system catalog tables.
field
A component of a named row data type. A field has a name and a data type and is accessed in an
SQL
statement by using dot notation: for example,
row_type_name.field_name
.
function
A routine that can accept arguments and returns one or more values.
See also
built-in function
,
routine
,
user-defined function
.
functional index
An index that stores the result of executing a specified function on a table column.
function overloading
See
routine overloading
.
Global Language Support (GLS)
An application environment that allows Informix application-programming interfaces (
API
s) and database servers to handle different languages, cultural conventions, and code sets. Developers use the
GLS
libraries to manage all string, currency, date, and time data types in their code. Using
GLS
, you can add support for a new language, character set, and encoding by editing resource files, without access to the original source code and without rebuilding the DataBlade module or client software.
grant privileges
Privileges granted to one or more users. The users then have the authority to grant these same privileges to other users. A privilege list identifies the exact privileges to be granted.
hash rule
A user-defined algorithm that maps each row in a table to a set of hash values used to determine the fragment in which a row is stored.
implicit cast
A cast that the database server automatically performs to convert data from one data type to another.
See also
cast
,
cast support function
.
index
A structure of pointers to rows of data in a table. An index optimizes the performance of database queries by ordering rows to make access faster.
Informix user
ID
A login user
ID
(login user name) that must be valid on all computer systems (operating systems) involved in the client's database access. Often referred to as the client's "user
ID"
or "user name."
Informix user password
A user
ID
password that must be valid on all computer systems (operating systems) involved in the client's database access. When the client specifies an explicit user
ID
, most computer systems require the Informix user password to validate the user
ID
.
INFORMIXDIR
The Informix environment variable that specifies the directory in which Informix products are installed.
inheritance
The property that allows a named row data type or a typed table to inherit representation (data fields and columns) and behavior (routines, operators, and rules) from a named row data type or typed table superior to it in a defined hierarchy. Inheritance allows for incremental modification, so that an object can inherit a general set of properties and then add properties that are specific to itself. Under certain circumstances, distinct data types can also have inheritance.
input parameter
A placeholder within a prepared
SQL
statement that represents a value to be provided at the time the statement is executed.
interface
In the DataBlade Developers Kit, a way to refer to a DataBlade module within another DataBlade module. Because an interface creates a dependency on another module, BladeManager ensures that the originating module is registered before the module that contains the interface.
iterator function
A function that returns a set of results one row at a time. The database server calls iterator functions repeatedly to process all the return values.
keyword
A word that has meaning to a programming language. In Informix
SQL,
keywords are shown in syntax diagrams in all uppercase letters. They must be used in
SQL
statements exactly as shown in the syntax, but they can be entered as either uppercase or lowercase letters.
large object
A data object that exceeds 255 bytes in length. A large object is logically stored in a table column but physically stored independently of the column, because of its size. Large objects can contain non-
ASCII
data. Your Informix database server recognizes two kinds of large objects: simple large objects (
TEXT
,
BYTE
) and smart large objects (
CLOB
,
BLOB
).
See also
SLV
,
smart large object
.
LIST constructor
A type constructor used to create a
LIST
data type.
LIST data type
A collection data type in which elements are ordered and duplicates are allowed.
See also
collection data type
.
locale
A set of files that define the native-language behavior of the program at runtime. The rules are usually based on the linguistic customs of the region or the territory. The locale can be set through an environment variable that dictates output formats for numbers, currency symbols, dates, and time, as well as collation order for character strings and regular expressions.
See also
Global Language Support (GLS)
.
LVARCHAR
A built-in data type that stores varying-length character data greater than 256 bytes. It is used for input and output casts for opaque data types.
LVARCHAR
supports code-set order for comparisons of character data.
math function
See
built-in function
,
operator function
.
member
A component of an opaque data type. A member has a name and a data type and can be accessed in an
SQL
statement by user-defined accessor functions.
multirepresenta-
tional data type
A data type whose storage location can switch between a row and a smart large object.
MULTISET constructor
A type constructor used to create a
MULTISET
data type.
MULTISET data type
A collection data type in which elements are not ordered and duplicates are allowed.
See also
collection data type
.
named row data type
A row data type that is created with the
CREATE ROW TYPE
statement and has a name. A named row data type can be used to construct a typed table and can be part of a type or table hierarchy.
See also
row data type
,
unnamed row data type
.
negator function
A Boolean function that accepts the same arguments in the same order as another Boolean function, but returns the Boolean complement. The query optimizer might choose the negator function if it executes more quickly in a given query than the specified function.
See also
commutator function
.
nonvariant function
A function that always returns the same value when passed the same arguments.
not null constraint
A constraint on a column that specifies that the column cannot contain null values.
object
See
database object
.
objects script
A file containing
SQL
statements that describe the objects in a DataBlade module.
opaque data type
An extended data type that contains one or more members but whose internal structure is interpreted by the database server using user-defined support routines.
operator
A symbol, such as =, >, +, or -, that invokes an operator function.
operator binding
The association between an operator and an operator function. Operator binding occurs when an
SQL
statement contains an operator and the database server automatically invokes the associated operator function.
operator class
The set of operators that the database server associates with a secondary access method. When an index is created, it is associated with a particular operator class.
operator function
An arithmetic function that has a corresponding operator symbol. An operator function processes one to three arguments and returns a value. For example, the
plus()
function corresponds to the "+" operator symbol.
overloading
See
routine overloading
.
parallel database query (PDQ)
A query that allows the database server to distribute the execution of the query among several virtual processors by dividing it into subqueries.
parallelizable routine
A routine that can be executed within a parallel database query statement.
See also
parallel database query (PDQ)
.
parameter
A variable to which a value can be assigned in a specific application. In a routine, a parameter is the placeholder for the argument values passed to the subroutine at runtime.
polymorphism
See
routine overloading
.
prepare script
A file containing SQL statements that describe the DataBlade module. There are two types of prepare scripts:
The script called
prepare.sql
contains information about the module that is not language-specific.
Scripts with names in the format
prepare.
locale
.sql
contain language-specific information such as the module and vendor descriptions.
primary access method
A set of routines that perform table operations such as inserting, deleting, updating, and scanning data. The database server provides a virtual table interface (
VTI
), with which advanced users can create primary access methods for virtual tables.
privilege
Rights granted to specific users on specific objects within the database. A privilege list identifies the exact privileges that are applicable for a particular object and that are held by the user invoking the grant. Privileges are granted or revoked on a database object using the
GRANT
and
REVOKE
statements.
procedure
A routine that can accept arguments but does not return a value.
See also
external procedure
,
stored procedure
.
procedure overloading
See
routine overloading
.
query optimizer
A server facility that estimates the most efficient plan for executing a query in the
DBMS
. The optimizer considers the
CPU
cost and the
I/O
cost of executing a plan.
R-tree index
A type of index that uses a tree structure based on overlapping bounding rectangles to speed access to spatial and multidimensional data types.
registration
The process of executing
SQL
statements to create DataBlade module objects or individual user-defined routines in a database and giving the database server the location of the associated shared object file. Registration makes a DataBlade module available for use by client applications that open that database.
routine
A named collection of program statements that perform a particular task and can accept arguments. Routines include functions, which return one or more values, and procedures, which do not return values.
See also
function
,
procedure
,
user-defined routine
.
routine resolution
The process that the database server uses to determine which routine to execute, given the routine signature.
See also
routine signature
.
routine signature
The information that the database server uses to identify a routine. The signature of a routine includes the type of the routine (function or procedure), the routine name, the number of parameters, the data types of the parameters, and the order of the parameters. In an
ANSI
-compliant database, the name of the routine is specified as
owner.name
.
routine overloading
Defining more than one routine with the same name but different parameter lists.
ROW constructor
The type constructor used to construct unnamed row data types.
row data type
A complex data type consisting of a group of ordered data elements (fields) of the same or different data types. The fields of a row type can be of any supported built-in or extended data type, including complex data types, except
SERIAL
and
SERIAL8
and, in certain situations,
TEXT
and
BYTE
.
There are two kinds of row data types:
Named row types, created using the
CREATE ROW TYPE
statement
Unnamed row types, created using the
ROW
constructor
See also
named row data type
,
unnamed row data type
.
sbspace
A logical storage area that contains one or more chunks that store only smart large object data.
secondary access method
A set of database server functions that build, access, and manipulate an index structure: for example, a B-tree, an R-tree, or an index structure provided by a DataBlade module. Typically, a secondary access method speeds up the retrieval of data.
When an
SQL
query uses an index created on a secondary access method, it accesses the index using the functions defined in the operator class associated with that access method.
See also
operator class
.
selectivity function
A function that calculates the percentage of rows that will be returned by a filter function in the
WHERE
clause of a query. The optimizer uses selectivity information to determine the fastest way to execute an
SQL
query.
SET constructor
A type constructor used to create a
SET
data type.
SET data type
A collection data type in which elements are not ordered and duplicates are not allowed.
See also
collection data type
.
shared memory
A portion of main memory that processes can use to communicate and share common data, thus reducing disk
I/O
and improving performance.
signature
See
routine signature
.
SLV
Abbreviation for
statement local variable
.
smart large object
A large object that:
is stored in an sbspace, a logical storage area that contains one or more chunks.
has read, write, and seek properties similar to a
UNIX
file.
is recoverable.
obeys transaction isolation modes.
can be retrieved in segments by an application.
Smart large objects include
CLOB
and
BLOB
data types.
SPL
Abbreviation for
Stored Procedure Language
.
statement local variable (SLV)
A variable for storing a value that a function returns indirectly, through a pointer, in addition to the value that the function returns directly. An
SLV
's scope is limited to the statement in which it is used. The RANK parameter of the
Resembles
operator function is an
SLV
.
stored procedure
A user-defined routine that is stored in a database in executable format. Stored procedures are used to execute frequently repeated tasks, to improve performance, and to monitor access to data. Stored procedures are written in Stored Procedure Language (
SPL
).
Stored Procedure Language
An Informix extension to
SQL
that provides flow-control features such as sequencing, branching, and looping, comparable to those features provided in the
SQL/PSM
standard.
SPL
can be used for writing DataBlade module routines.
strategy functions
The functions that the optimizer uses to determine what filters in a query can use a secondary access method (index).
subquery
A
SELECT
statement within a
WHERE
clause.
support routines
The internal routines that the database server automatically invokes to process a data type, cast, aggregate, or access method.
The database server uses user-defined support routines to perform operations on opaque data types (such as converting to and from the internal, external, and binary representations of the type).
An secondary access method uses a support routine in an operator class to perform operations on an index (such as building or searching).
system catalog
A group of database tables that contain information about the database itself, such as the names of tables or columns in the database, the number of rows in a table, the information about indexes and database privileges, and so on.
table
A rectangular array of data in which each row describes a single entity and each column contains the values for each category of description. A table is sometimes referred to as a
base table
to distinguish it from the views, indexes, and other objects defined on the underlying table or associated with it.
type constructor
An
SQL
keyword that indicates to the database server the type of complex data to create.
See also
LIST constructor
,
MULTISET constructor
,
ROW constructor
,
SET constructor
.
type inheritance
The property that allows a named row data type to inherit representation (data fields, columns) and behavior (routines, operators, rules) from a named row type above it in the type hierarchy.
unnamed row data type
A row type created with the
ROW
constructor that has no defined name and no inheritance properties. Two unnamed row types are equivalent if they have the same number of fields and if corresponding fields have the same data type, even if the fields have different names.
unregistration
The process of executing
SQL
statements to drop DataBlade module objects or individual user-defined routines in a database and removing the ability to access the associated shared object file from the database server.
user-defined function
A user-defined routine that returns a value.
user-defined routine
A routine, written in one of the languages that your Informix database server supports, that provides added functionality for data types or encapsulates application logic.
user-defined procedure
A user-defined routine that does not return a value.
user-defined statistics
Information about the opaque data type values in your database that is collected by the
UPDATE STATISTICS
statement, which calls user-defined functions to calculate the statistics. The optimizer uses these statistics to determine the fastest way to execute an
SQL
query.
user-defined virtual processor
A virtual processor that executes the user-defined routines that are assigned to it.
See also
virtual processor
.
value object
A self-contained binary object that provides standard interfaces to its callers. Value objects can be used in client applications.
variant function
A function that, with the same arguments, can either return different values or have varying side effects, such as updating a table or external file.
virtual processor
One of the multithreaded processes that make up the database server and are similar to the hardware processors in the computer.
DataBlade Developers Kit User's Guide
, Version 4.0
Copyright © 1999, Informix Software, Inc. All rights reserved