You can use the HCL Informix® implementation of the SQL language to develop applications for Informix database servers.
The HCL® Informix® Guide to SQL: Reference contains the reference information for the system catalog tables, data types, and environment variables of the HCL Informix dialect of the SQL language, as implemented in HCL Informix. These topics also include information about the stores_demo, sales_demo, and superstore_demo databases that are included with HCL Informix.
Every column in a table in a database is assigned a data type. The data type precisely defines the kinds of values that you can store in that column.
The DOUBLE PRECISION keywords are a synonym for the FLOAT keyword.
Welcome to the documentation for HCL Informix® 15.0.0 and related client tools and products.
HCL Informix® is a fast and scalable database server that manages traditional relational, object-relational, and dimensional databases. Its small footprint and self-managing capabilities are suited to embedded data-management solutions.
These topics describe how to install HCL Informix® database servers, client products, and modules.
In addition to administering the database server, you can tune performance, replicate data, and archive data.
You can upgrade to the 15.0.0 release of HCL Informix® or migrate from other database servers to Informix. Upgrading is an in-place migration method that uses your existing hardware and operating system software. Some changes to the Informix database server can affect upgrading from a previous release.
You can use the HCL Informix® implementation of client APIs to develop applications for Informix database servers.
When you embed HCL Informix®, you can use enterprise-class high-availability and high performance with embeddability features such as easy programmability, a small disk and memory footprint, and silent deployment.
Beyond standard relational database objects, HCL Informix® can be extended to handle specialized data types, access methods, routines, and other objects. Informix includes many built-in extensions that are fully integrated in the database server. Informix also provides modules, which are packages of extended database objects for a particular purpose and that are installed separately from the database server. Alternatively, you can create your own user-defined objects for Informix.
In addition to designing and implementing Informix® dimensional databases, you can use tools to create data warehouse applications and optimize your data warehouse queries.
The first step in creating a relational database is to construct a data model, which is a precise, complete definition of the data you want to store. After you prepare your data model, you must implement it as a database and tables. To implement your data model, you first select a data type for each column and then you create a database and tables and populate the tables with data. You can also implement fragmentation strategies and control access to your data.
You can use the popular JSON-oriented query language created by MongoDB to interact with data stored in HCL Informix®.
You can secure your Informix® database server and the data that is stored in your Informix databases. You can encrypt data, secure connections, control user privileges and access, and audit data security.
The HCL® Informix® Guide to SQL: Syntax describes the syntax of the statements, data types, expressions, operators, and built-in functions of the Informix dialect of the SQL language.
The system catalog consists of tables and views that describe the structure of the database. Sometimes called the data dictionary, these table objects contain everything that the database knows about itself. Each system catalog table contains information about specific elements in the database. Each database has its own system catalog.
HCL Informix® supports the most common set of built-in data types. Additionally, an extended set of data types are supported on the database server.
The BIGINT data type stores integers from -(263 -1) to 263 -1, which is –9,223,372,036,854,775,807 to 9,223,372,036,854,775,807, in eight bytes.
The BIGSERIAL data type stores a sequential integer, of the BIGINT data type, that is assigned automatically by the database server when a new row is inserted. The behavior of the BIGSERIAL data type is similar to the SERIAL data type, but with a larger range.
The BLOB data type stores any kind of binary data in random-access chunks, called sbspaces. Binary data typically consists of saved spreadsheets, program-load modules, digitized voice patterns, and so on. The database server performs no interpretation of the contents of a BLOB column.
The BOOLEAN data type stores TRUE or FALSE data values as a single byte.
TRUE
FALSE
The BYTE data type stores any kind of binary data in an undifferentiated byte stream. Binary data typically consists of digitized information, such as spreadsheets, program load modules, digitized voice patterns, and so on.
The CHARACTER data type is a synonym for CHAR.
The CHARACTER VARYING data type stores a string of letters, digits, and symbols of varying length, where m is the maximum size of the column (in bytes) and r is the minimum number of bytes reserved for that column.
The CLOB data type stores any kind of text data in random-access chunks, called sbspaces. Text data can include text-formatting information, if this information is also textual, such as PostScript™, Hypertext Markup Language (HTML), Standard Graphic Markup Language (SGML), or Extensible Markup Language (XML) data.
The DATE data type stores the calendar date. DATE data types require four bytes. A calendar date is stored internally as an integer value equal to the number of days since December 31, 1899.
The DEC data type is a synonym for DECIMAL.
The DECIMAL data type can take two forms: DECIMAL(p) floating point and DECIMAL(p,s) fixed point.
A DISTINCT type is a data type that is derived from a source type (called the base type).
The IDSSECURITYLABEL type stores a security label in a table that is protected by a label-based access control (LBAC) security policy.
The INT data type is a synonym for INTEGER.
The INT8 data type stores whole numbers that can range in value from –9,223,372,036,854,775,807 to 9,223,372,036,854,775,807 [or -(263-1) to 263-1], for 18 or 19 digits of precision.
The INTEGER data type stores whole numbers that range from -2,147,483,647 to 2,147,483,647 for 9 or 10 digits of precision.
The LIST data type is a collection type that can store ordered non-NULL elements of the same SQL data type.
Use the LVARCHAR data type to create a column for storing variable-length character strings whose upper limit (m) can be up to 32,739 bytes.
The MONEY data type stores currency amounts.
The MULTISET data type is a collection type that stores a non-ordered set that can include duplicate element values.
The NCHAR data type stores fixed-length character data. The data can be a string of single-byte or multibyte letters, digits, and other symbols that are supported by the code set of the database locale.
The NUMERIC data type is a synonym for fixed-point DECIMAL.
The NVARCHAR data type stores strings of varying lengths. The string can include digits, symbols, and both single-byte and (in some locales) multibyte characters.
An OPAQUE type is a data type for which you must provide information to the database server.
The REAL data type is a synonym for SMALLFLOAT.
A named ROW data type must be declared with a name. This SQL identifier must be unique among data type names within the same database.
An unnamed ROW type contains fields but has no user-declared name. An unnamed ROW type is defined by its structure.
The SERIAL data type stores a sequential integer, of the INT data type, that is automatically assigned by the database server when a new row is inserted.
The SERIAL8 data type stores a sequential integer, of the INT8 data type, that is assigned automatically by the database server when a new row is inserted.
The SET data type is an unordered collection type that stores unique elements
The SMALLFLOAT data type stores single-precision floating-point numbers with approximately nine significant digits.
The SMALLINT data type stores small whole numbers that range from –32,767 to 32,767. The maximum negative number, –32,768, is a reserved value and cannot be used.
The TEXT data type stores any kind of text data. It can contain both single-byte and multibyte characters that the locale supports. The term simple large object refers to an instance of a TEXT or BYTE data type.
The VARCHAR data type stores character strings of varying length that contain single-byte and (if the locale supports them) multibyte characters, where m is the maximum size (in bytes) of the column and r is the minimum number of bytes reserved for that column.
Various environment variables affect the functionality of your HCL Informix® products. You can set environment variables that identify your terminal, specify the location of your software and define other parameters.
The HCL® Informix® Guide to SQL: Tutorial shows how to use basic and advanced structured query language (SQL) to access and manipulate the data in your databases. It discusses the data manipulation language (DML) statements as well as triggers and stored procedure language (SPL) routines, which DML statements often use.
Several troubleshooting techniques, tools, and resources are available for resolving problems that you encounter in your HCL Informix® database server environment.