# CSQL

</td></tr>
Developer(s) Lakshya & Community CSQL 3.3 / May 8, 2011 {{#property:P1324}} Javascript,C++ Linux,Oracle Solaris RDBMS csql.sourceforge.net

CSQL is an open source main memory high-performance relational database management system developed at sourceforge.net. It is designed to provide high performance for SQL queries and DML statements. As there is no disk I/O, main memory databases provide a predictive response time (~10 microseconds for point LOOKUP and ~20 microseconds for INSERT, UPDATE, DELETE operations) which is suited to real time and near real time applications. For more information see. It can transparently cache data from existing databases. It can be configured to work as transparent, real time cache [1]for existing database management systems such as MySQL, and Postgres.

## Features

• Direct access to the database, the data is available in the address space of the application through the internal mechanism;
• Client-server access to applications residing on remote computers from the server;
• Atomicity - all operations performed by the transaction must be confirmed to the entry into force, in the absence of confirmation of the changes will be canceled;
• Consistency - the database should be available in time, prior to the transaction and for some time after its completion;
• Insulation - each transaction is carried out in an isolated area, independent and unavailable to transactions carried out by other applications;
• Resilience - the ability to restore all committed transactions in the event of equipment failure or other system malfunctions;
• Limitations - NOT NULL, Unique key, Primary Key, Foreign Key;
• Default values ​​for auto increment fields;
• Automatic release of resources of the application processes, which have received a failure and no longer answer;
• Faster execution of commands LOOKUP, through the use of indices and index cache;
• Accelerated implementation of multiple zaprosv by using tree indexing;
• Data types: BYTE, SMALL, INT, BIGINT, FLOAT, DOUBLE, CHAR, BINARY, DATE, TIME, TIMESTAMP;
• Lock-level data item (line), blocking the free internal structures for a high degree of multi-threading;
• Support for user authentication mechanism to access the database;
• Support for aggregate functions, grouping, inner join, outer join, self-join, exceptions, sort;

## Platfroms

SQL Implemented in:

• SQL
• ODBC
• JDBC
• PHP

## Operating principle

Connection to the server is performed by using the Init().

On the input it takes four mandatory parameters and the optional 1: address or host name, user name, password, database name and a sign of "connect all". If on the indication "connect all" set to 0 (the default), the Init() function makes only one connection to the server if set to 1, the Init() will make 4 connections (the maximum possible number of connections). If there was only one connection is made, then others will being made automatically as needed. The need to make multiple connections is appeared when we want to use the transaction, because the transactions are only use open connections.

## References

Cite error: Invalid <references> tag; parameter "group" is allowed only.

Use <references />, or <references group="..." />

## Notes

• CSQL Cache is an open source high performance, bi-directional updateable data caching infrastructure that sits between the clustered application process and back-end data sources to provide high throughput to the application.