The built-in Informix SQL engine in General SQL Parser provides in-depth analysis of an organization's Informix SQL script at a detailed level that would not be possible without a complete, 100% compatible query parser.
Parsing SQL is a notoriously difficult task because the syntax of Informix SQL is very ambiguous in a lot of places. Many people have attempted to write a full SQL grammar with parser generate tool and failed.
Now you can fully incorporated this Informix SQL parser into your products, instantly adding a powerful SQL processing capability to your program. With the right library, you can get your job done quickly by saving hundred of hours, if not more, on developing time.
Easily integrate SQL formatter into your application for a color coded layout that is easy to navigate, giving your product a professional feeling.
Your application will be able to validate SQL syntax before a database executes the query. This is very useful especially if your SQL was dynamically built based on user input.
Avoid being vulnerable to SQL injection in your ASP.NET or Java application, by automatically detecting malicious SQL segment with our ready-to-use library.
Precisely determining and renaming every table and column in stored SQL statements is very complex with a lot of nesting and sub-queries. With us, however, that tedious procedure can become hassle-free one for you.
Parse out the affect SQL objects in a SQL file that can have many different types of SQL (select, insert, create, drop, etc), and helping to determine what is being affected, including but not limited to schema, table, column.
Quickly locate the primary key and/or foreign key in DDL scripts to figure out the complex relationship among the various tables. Extracted table, attribute names, data types can be used to generate the CRUD-Statements.
Parsing SQL is a notoriously difficult task, but we are here to help. You will be provided with a SQL query parse tree in XML output that will allow you to further process SQL scripts.
Modify SQL expression/condition in where clause to reconstruct a new filter. Rewrite Oracle proprietary joins to ANSI SQL compliant joins. Translate SQL between different databases.
Read complex and large SQL scripts to find out tables have Create, Read, Update, Delete and Insert operations against them immediately, it's almost impossible to do that without help with a tool.
We are dedicated to constantly improving our product so it will be easier to use with more flexibility, making it a valuable asset to your software product. Here, we have provided you with additional demos that may be helpful to you.
Level 1: SQL parser recognizes that this is a valid SQL statement, but can't validate the syntax of this specific SQL statement. This demo shows how General SQL Parser can handle this kind of SQL statements.
Level 2: SQL Parser fully parses this kind of SQL statements with detailed query parse tree node elements and provides everything you need to analyze and manipulate this kind of SQL statements.
Level 1 statements: 148, Level 2 statements: 33, generated by General SQL Parser Java Version 1.8.8.5,2017/09/29
SQL statements | Level 1 | Level 2 |
allocate collection | Y | |
allocate descriptor | Y | |
alter access_method | Y | |
alter fragment | Y | |
alter function | Y | |
alter index | Y | Y |
alter procedure | Y | |
alter routine | Y | |
alter security label component | Y | |
alter sequence | Y | Y |
alter table | Y | Y |
alter trusted context | Y | |
alter user | Y | |
begin | Y | |
close | Y | |
close database | Y | |
commit | Y | |
connect to | Y | |
create access_method | Y | |
create aggregate | Y | |
create cast | Y | |
create cluster index | Y | Y |
create database | Y | Y |
create dba function | Y | Y |
create dba procedure | Y | Y |
create default user | Y | |
create distinct type | Y | |
create external table | Y | |
create function from | Y | |
create opaque type | Y | |
create opclass | Y | |
create private synonym | Y | Y |
create procedure from | Y | |
create raw table | Y | Y |
create role | Y | |
create routine from | Y | |
create row type | Y | Y |
create schema | Y | |
create security label | Y | |
create security label component | Y | |
create security policy | Y | |
create sequence | Y | Y |
create temp table | Y | Y |
create trigger | Y | Y |
create trusted context | Y | |
create user | Y | |
create view | Y | Y |
create xadatasource | Y | |
create xadatasource type | Y | |
database | Y | |
deallocate collection | Y | |
deallocate descriptor | Y | |
deallocate row | Y | |
declare | Y | |
delete | Y | Y |
describe | Y | |
describe input | Y | |
disconnect | Y | |
drop access_method | Y | |
drop aggregate | Y | |
drop cast | Y | |
drop database | Y | |
drop function | Y | |
drop index | Y | Y |
drop opclass | Y | |
drop procedure | Y | |
drop role | Y | |
drop routine | Y | |
drop row type | Y | Y |
drop security | Y | |
drop sequence | Y | Y |
drop synonym | Y | Y |
drop table | Y | Y |
drop trigger | Y | |
drop trusted context | Y | |
drop type | Y | |
drop user | Y | |
drop view | Y | Y |
drop xadatasource | Y | |
drop xadatasource type | Y | |
exec | Y | |
execute function | Y | Y |
execute immediate | Y | Y |
execute procedure | Y | Y |
fetch | Y | |
flush | Y | |
free | Y | |
get descriptor | Y | |
get diagnostics | Y | |
grant | Y | |
grant fragment | Y | |
info | Y | |
insert | Y | Y |
load | Y | |
lock table | Y | |
merge | Y | Y |
open | Y | |
output | Y | |
prepare | Y | |
put | Y | |
release savepoint | Y | |
rename column | Y | Y |
rename database | Y | |
rename index | Y | Y |
rename security | Y | |
rename sequence | Y | Y |
rename table | Y | Y |
rename trusted context | Y | |
rename user | Y | |
revoke | Y | |
revoke fragment | Y | |
rollback work | Y | |
save external directives | Y | |
savepoint | Y | |
select | Y | Y |
set autofree | Y | |
set collation | Y | |
set connection | Y | |
set constraints | Y | |
set database object | Y | |
set dataskip | Y | |
set debug file | Y | |
set defferred_prepare | Y | |
set descriptor | Y | |
set encryption password | Y | |
set environment | Y | |
set explain | Y | |
set indexes | Y | |
set isolation | Y | |
set lock mode | Y | |
set log | Y | |
set optimization | Y | |
set pdqpriority | Y | |
set role | Y | |
set session authorization | Y | |
set statement cache | Y | |
set transaction | Y | |
set transaction mode | Y | |
set triggers | Y | |
set user password | Y | |
start violations table | Y | |
stop violations table | Y | |
truncate | Y | Y |
unload | Y | |
unlock table | Y | |
update | Y | Y |
update statistics | Y | |
whenever | Y |
If you have any questions about General SQL Parser, You can always send us an email and we'll get back to you within 24 hours.
Yes, of course. We collect all kinds of examples in this page to illustrate how and why you want to use general sql parser, hope it can help you to make better use of this library.