IBM Informix SQL Parser Support in GSP¶
Explore the IBM Informix SQL Parser product page
This page documents the SQL syntax support for IBM Informix in the General SQL Parser.
Syntax Coverage Corpus¶
GSP tests Informix syntax against 164 documented constructs grouped into 47 categories, each cross-referenced to the documentation that defines it (160 distinct source pages).
Parse coverage¶
Measured against GSP Java 4.2.8 on 2026-08-31 (UTC) (artifact sha256 1117856ef134). Each construct below carries the complete set of examples from the Informix documentation; a construct counts as fully covered only when every one of its examples parses. Percentages are pass rates over this documented-example corpus — not a percentage of the entire SQL dialect.
| Constructs fully parsed | Individual statements parsed | |
|---|---|---|
| All constructs | 134 of 164 (82%) | 1089 of 1153 (94%) |
| SELECT (queries) | 12 of 17 (71%) | 177 of 187 (95%) |
| DML (INSERT / UPDATE / DELETE / MERGE) | 5 of 8 (63%) | 65 of 71 (92%) |
| Stored procedures | 1 of 5 (20%) | 5 of 16 (31%) |
Statements are split using the parser's own statement splitter, so multi-statement examples and procedure bodies are counted correctly. The SELECT, DML and stored-procedure rows classify each statement by its parsed statement type: a construct is counted in a row when its examples contain at least one statement of that class, and is fully parsed when all of them parse. Stored procedures covers CREATE PROCEDURE / FUNCTION / PACKAGE / TRIGGER definitions and anonymous blocks.
Machine-readable: dialect data (JSON) · all-dialect matrix · coverage matrix overview
All 164 constructs¶
| Construct | Category | Parses | Specified in |
|---|---|---|---|
ALLOCATE COLLECTION |
ALLOCATE COLLECTION | 8 of 12 | IBM docs |
ALLOCATE DESCRIPTOR |
ALLOCATE DESCRIPTOR | all 2 | IBM docs |
ALLOCATE ROW |
ALLOCATE ROW | 3 of 6 | IBM docs |
ALTER ACCESS_METHOD |
ALTER | all 1 | IBM docs |
ALTER FRAGMENT |
ALTER | all 89 | IBM docs |
ALTER FUNCTION |
ALTER | all 1 | IBM docs |
ALTER INDEX |
ALTER | all 6 | IBM docs |
ALTER INDEX |
ALTER | all 3 | IBM docs |
ALTER PROCEDURE |
ALTER | all 1 | IBM docs |
ALTER ROUTINE |
ALTER | 3 of 4 | IBM docs |
ALTER SECURITY LABEL COMPONENT |
ALTER | all 3 | IBM docs |
ALTER SEQUENCE |
ALTER | all 2 | IBM docs |
ALTER SEQUENCE |
ALTER | all 1 | IBM docs |
ALTER TABLE |
ALTER | 0 of 1 | IBM docs |
ALTER TRUSTED CONTEXT |
ALTER | all 3 | IBM docs |
ALTER USER |
ALTER | all 5 | IBM docs |
BEGIN WORK |
BEGIN WORK | all 8 | IBM docs |
CLOSE |
CLOSE | all 1 | IBM docs |
CLOSE DATABASE |
CLOSE DATABASE | all 1 | IBM docs |
COMMIT WORK |
COMMIT WORK | all 6 | IBM docs |
CREATE ACCESS_METHOD |
CREATE | 0 of 2 | IBM docs |
CREATE AGGREGATE |
CREATE | all 1 | IBM docs |
CREATE CAST |
CREATE | all 3 | IBM docs |
CREATE DATABASE |
CREATE | 13 of 14 | IBM docs |
CREATE DEFAULT USER |
CREATE | all 1 | IBM docs |
CREATE DISTINCT TYPE |
CREATE | all 2 | IBM docs |
CREATE EXTERNAL TABLE |
CREATE | all 8 | IBM docs |
CREATE FUNCTION |
CREATE | 0 of 1 | IBM docs |
CREATE FUNCTION FROM |
CREATE | 0 of 1 | IBM docs |
CREATE INDEX |
CREATE | 27 of 28 | IBM docs |
CREATE OPAQUE TYPE |
CREATE | all 2 | IBM docs |
CREATE OPCLASS |
CREATE | all 1 | IBM docs |
CREATE PROCEDURE |
CREATE | 4 of 7 | IBM docs |
CREATE PROCEDURE FROM |
CREATE | all 1 | IBM docs |
CREATE ROLE |
CREATE | all 1 | IBM docs |
CREATE ROUTINE FROM |
CREATE | all 1 | IBM docs |
CREATE ROW TYPE |
CREATE | all 4 | IBM docs |
CREATE SCHEMA |
CREATE | all 5 | IBM docs |
CREATE SECURITY LABEL |
CREATE | all 2 | IBM docs |
CREATE SECURITY LABEL COMPONENT |
CREATE | all 3 | IBM docs |
CREATE SECURITY POLICY |
CREATE | all 4 | IBM docs |
CREATE SEQUENCE |
CREATE | all 1 | IBM docs |
CREATE SYNONYM |
CREATE | all 14 | IBM docs |
CREATE TABLE |
CREATE | 45 of 50 | IBM docs |
CREATE TEMP TABLE |
CREATE | all 1 | IBM docs |
CREATE TRIGGER |
CREATE | 0 of 6 | IBM docs |
CREATE TRUSTED CONTEXT |
CREATE | all 2 | IBM docs |
CREATE USER |
CREATE | all 6 | IBM docs |
CREATE VIEW |
CREATE | all 7 | IBM docs |
CREATE XADATASOURCE |
CREATE | all 1 | IBM docs |
CREATE XADATASOURCE TYPE |
CREATE | all 2 | IBM docs |
Database |
Database | 0 of 3 | IBM docs |
DEALLOCATE COLLECTION |
DEALLOCATE | all 2 | IBM docs |
DEALLOCATE DESCRIPTOR |
DEALLOCATE | all 2 | IBM docs |
DEALLOCATE ROW |
DEALLOCATE | all 2 | IBM docs |
DECLARE |
DECLARE | all 52 | IBM docs |
DELETE |
DELETE | all 10 | IBM docs |
DESCRIBE |
DESCRIBE | all 2 | IBM docs |
DESCRIBE INPUT |
DESCRIBE | all 2 | IBM docs |
DISCONNECT |
DISCONNECT | all 3 | IBM docs |
DROP ACCESS_METHOD |
DROP | all 1 | IBM docs |
DROP AGGREGATE |
DROP | all 1 | IBM docs |
DROP CAST |
DROP | all 1 | IBM docs |
DROP DATABASE |
DROP | all 2 | IBM docs |
DROP FUNCTION |
DROP | all 5 | IBM docs |
DROP INDEX |
DROP | all 2 | IBM docs |
DROP OPCLASS |
DROP | all 1 | IBM docs |
DROP PROCEDURE |
DROP | all 2 | IBM docs |
DROP ROLE |
DROP | all 1 | IBM docs |
DROP ROUTINE |
DROP | all 2 | IBM docs |
DROP ROW TYPE |
DROP | all 2 | IBM docs |
DROP SECURITY |
DROP | all 3 | IBM docs |
DROP SEQUENCE |
DROP | all 1 | IBM docs |
DROP SYNONYM |
DROP | all 1 | IBM docs |
DROP TABLE |
DROP | all 2 | IBM docs |
DROP TRIGGER |
DROP | all 1 | IBM docs |
DROP TRUSTED CONTEXT |
DROP | all 1 | IBM docs |
DROP TYPE |
DROP | all 1 | IBM docs |
DROP USER |
DROP | all 1 | IBM docs |
DROP VIEW |
DROP | all 1 | IBM docs |
DROP XADATASOURCE |
DROP | all 1 | IBM docs |
DROP XADATASOURCE TYPE |
DROP | all 1 | IBM docs |
EXECUTE |
EXECUTE | all 4 | IBM docs |
EXECUTE FUNCTION |
EXECUTE | 0 of 3 | IBM docs |
EXECUTE IMMEDIATE |
EXECUTE | all 3 | IBM docs |
EXECUTE PROCEDURE |
EXECUTE | 0 of 1 | IBM docs |
FETCH |
FETCH | all 9 | IBM docs |
FLUSH |
FLUSH | all 1 | IBM docs |
FREE |
FREE | all 2 | IBM docs |
GET DESCRIPTOR |
GET | all 5 | IBM docs |
GET DIAGNOSTICS |
GET | all 2 | IBM docs |
GRANT |
GRANT | all 41 | IBM docs |
GRANT FRAGMENT |
GRANT | all 11 | IBM docs |
INFO |
INFO | all 2 | IBM docs |
INSERT |
INSERT | 9 of 11 | IBM docs |
LOAD |
LOAD | 3 of 6 | IBM docs |
LOCK TABLE |
LOCK TABLE | all 4 | IBM docs |
MERGE |
MERGE | all 9 | IBM docs |
OPEN |
OPEN | all 6 | IBM docs |
OUTPUT |
OUTPUT | all 4 | IBM docs |
PREPARE |
PREPARE | 13 of 15 | IBM docs |
PUT |
PUT | all 3 | IBM docs |
RELEASE SAVEPOINT |
RELEASE SAVEPOINT | all 2 | IBM docs |
RENAME COLUMN |
RENAME | all 1 | IBM docs |
RENAME CONSTRAINT |
RENAME | 0 of 1 | IBM docs |
RENAME DATABASE |
RENAME | all 1 | IBM docs |
RENAME INDEX |
RENAME | 0 of 2 | IBM docs |
RENAME SECURITY |
RENAME | all 3 | IBM docs |
RENAME SEQUENCE |
RENAME | 0 of 1 | IBM docs |
RENAME TABLE |
RENAME | all 1 | IBM docs |
RENAME TRUSTED CONTEXT |
RENAME | all 1 | IBM docs |
RENAME USER |
RENAME | all 1 | IBM docs |
REVOKE |
REVOKE | all 29 | IBM docs |
REVOKE FRAGMENT |
REVOKE | all 6 | IBM docs |
ROLLBACK WORK |
ROLLBACK WORK | all 4 | IBM docs |
SAVE EXTERNAL DIRECTIVES |
SAVE EXTERNAL DIRECTIVES | all 4 | IBM docs |
SAVEPOINT |
SAVEPOINT | all 1 | IBM docs |
FOR READ ONLY Clause |
SELECT | all 1 | IBM docs |
FOR UPDATE Clause |
SELECT | all 1 | IBM docs |
FROM Clause |
SELECT | 29 of 32 | IBM docs |
GRID clause |
SELECT | all 4 | IBM docs |
GROUP BY Clause |
SELECT | all 3 | IBM docs |
HAVING Clause |
SELECT | 4 of 5 | IBM docs |
Hierarchical Clause |
SELECT | all 7 | IBM docs |
INTO Clause |
SELECT | 3 of 4 | IBM docs |
INTO table clauses |
SELECT | all 6 | IBM docs |
LIMIT Clause |
SELECT | all 13 | IBM docs |
ORDER BY Clause |
SELECT | 8 of 10 | IBM docs |
Projection Clause |
SELECT | 46 of 49 | IBM docs |
WHERE clause of SELECT |
SELECT | all 27 | IBM docs |
SET AUTOFREE statement |
SET | all 4 | IBM docs |
SET COLLATION statement |
SET | 2 of 3 | IBM docs |
SET CONNECTION statement |
SET | all 6 | IBM docs |
SET CONSTRAINTS statement |
SET | all 1 | IBM docs |
SET Database Object Mode statement |
SET | all 17 | IBM docs |
SET DATASKIP statement |
SET | all 3 | IBM docs |
SET DEBUG FILE statement |
SET | all 1 | IBM docs |
SET DEFERRED_PREPARE statement |
SET | all 3 | IBM docs |
SET DESCRIPTOR statement |
SET | 5 of 8 | IBM docs |
SET ENCRYPTION PASSWORD statement |
SET | all 3 | IBM docs |
SET ENVIRONMENT statement |
SET | all 131 | IBM docs |
SET EXPLAIN statement |
SET | all 4 | IBM docs |
SET INDEXES statement |
SET | all 6 | IBM docs |
SET ISOLATION statement |
SET | all 4 | IBM docs |
SET LOCK MODE statement |
SET | all 3 | IBM docs |
SET LOG statement |
SET | 1 of 2 | IBM docs |
SET OPTIMIZATION statement |
SET | all 15 | IBM docs |
SET PDQPRIORITY statement |
SET | all 5 | IBM docs |
SET ROLE statement |
SET | all 3 | IBM docs |
SET SESSION AUTHORIZATION statement |
SET | all 1 | IBM docs |
SET STATEMENT CACHE statement |
SET | all 2 | IBM docs |
SET Transaction Mode statement |
SET | all 2 | IBM docs |
SET TRANSACTION statement |
SET | all 4 | IBM docs |
SET TRIGGERS statement |
SET | all 1 | IBM docs |
SET USER PASSWORD statement (UNIX, Linux) |
SET | all 1 | IBM docs |
Using the COUNT Clause |
SET | all 1 | IBM docs |
START VIOLATIONS TABLE statement |
START VIOLATIONS TABLE statement | all 7 | IBM docs |
STOP VIOLATIONS TABLE statement |
STOP VIOLATIONS TABLE statement | all 1 | IBM docs |
TRUNCATE statement |
TRUNCATE statement | all 4 | IBM docs |
UNLOAD statement |
UNLOAD statement | all 4 | IBM docs |
UNLOCK TABLE statement |
UNLOCK TABLE statement | all 1 | IBM docs |
UPDATE statement |
UPDATE statement | 29 of 31 | IBM docs |
UPDATE STATISTICS statement |
UPDATE STATISTICS statement | all 50 | IBM docs |
WHENEVER statement |
WHENEVER statement | all 9 | IBM docs |
Key Features Supported¶
- Standard SQL operations (SELECT, INSERT, UPDATE, DELETE)
- Informix-specific functions and data types
- Stored procedures and user-defined functions
- Time series and spatial data support
- Advanced indexing and partitioning
- High-availability features