A complete edition that allows all DML commands and all major SQL types.
Production easy start with provided authentication options and ready to use firewalling rules.
For projects that do not require high levels of scaling, monitoring, or professional support.
- Open source under LGPL v2.1
- DELETE / INSERT / SELECT / UPDATE commands support
- Full transactions support (COMMIT / ROLLBACK)
- Batch support
- Firewalling management
- Community support
Enterprise-grade availability with scale-up options.
Includes stored procedure, Metadata APIs and advanced running options and monitoring.
Includes advanced options for authentication and firewall management.
399 € excl. VAT
per year and applies to up
to 5 SQL database names.
This means you’re granted the right to access up to 5 databases from any computer. The « my_company_sales » database, for example, may be accessed by AceQL from your test server, your pre-production server and your production server.
- Includes all features from Community Edition
- Stored procedures support
- JDBC Metadata APIs support: allows client side to use database tools
- Advanced running options
- Enhanced authentication, monitoring & firewalling
- Professional support
|Features & Details||Community Edition
|Open source databases: MariaDb, MySQL, PostgreSQL|
|Microsoft SQL Server|
|Main SQL types: Boolean, Integer, Short, Double, Float, BigDecimal, Long, String, Date, Time, Timestamp|
|BLOB & CLOB types|
|DML operations (DELETE, INSERT, SELECT, UPDATE, …)|
|TCL operations (COMMIT, ROLLBACK, SAVEPOINT)|
|DCL operations (GRANT, REVOKE, ...)|
|DDL operations (CREATE, ALTER, DROP, RENAME, …)|
JDBC API metadata calls from client-side
All JDBC metadata APIs are callable from the client side, allowing you to use database viewers with the AceQL Client JDBC Driver: DBeaver, DbVisualizer, etc.
|Tomcat JDBC Connection Pooling|
|Support any JDBC Pooling Connection framework (DBCP, HikariCP, C3P0, etc.)|
|Full control of Connection release in the pool
Allows you to trigger Java events before and after the release of the Connection to the Pool
|Maximum simultaneous JDBC Connections per database||125||Unlimited|
|Unlimited SELECT result set size|
|Limiting maximum size of SELECT result|
|SQL stored procedures|
|Java AceQL stored procedures
Call from client-side Java programs that directly return a formatted, ready-to-use ResultSet created on the server side.
|Windows, SSH, JDBC Query, LDAP, Web Service
Provides ready-to-use classes for authenticating against a Windows server, a Linux server, a SQL table, a LDAP server or a Web service.
|External authentication without a password
Some working environments (Intranet, etc.) require the client user to authenticate themself without a password. This feature allows for client authentication with a session ID.
|Request headers analysis for validation on server
The request headers may be intercepted on the server side by the validate() method of a Java interface. This feature eases authentication against Cloud services that use request headers, such as AWS.
|Firewall rules creation using Java Dependency Injection|
|Ready-to-use firewall chained rules set
Easily build firewall rules by chaining provided, ready-to-use classes.
|Firewall rules set definition using a CSV file
Define complex firewall rules using only a CSV file loaded at server startup. Each SQL query is performed against the content of the CSV file.
|Trigger code/action if attack is detected|
|Maximum number of Java Threads per running instance||125||Unlimited|
|Maximum number of databases per running instance||2||Unlimited|
|Java ThreadPoolExecutor fine tuning
Allows you to define all the parameters of the java.util.concurrent.ThreadPoolExecutor instance used to execute all servlet requests in async mode.
Allows defining Java code to execute after a successful SQL database update is done. Update Listeners can be viewed as a kind of Java "trigger" executed on the completion of SQL updates. Much easier to code and use than SQL database vendors specific listeners.
|JDBC Connection pool monitoring servlet
Allows you to define servlets that can interact with AceQL Web Server (in order to query info about JDBC pools in use, or modify a pool size, etc.)
|Controlling the AceQL Web Server from a program
Allows you to start and stop the AceQL Web Server from a Java program.
|Running AceQL directly in a Servlet container (Tomcat, JBoss, etc.)|
|Properties file encryption
In order to protect configuration passwords and other confidential values from eavesdropping, each property value may be replaced by an encrypted value in the main properties file.