> For the complete documentation index, see [llms.txt](https://hrodebert.gitbook.io/qic-database-ver-1.0.0/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hrodebert.gitbook.io/qic-database-ver-1.0.0/database/data_base.md).

# data\_base

## Class: `data_base`

The `data_base` class is the central component of the Q.I.C library, providing functionality to manage file-based databases. It handles operations such as opening, closing, and modifying databases, as well as managing tables and records within them. By leveraging C++'s modern filesystem library and custom compression utilities, `data_base` ensures efficient database handling and security.

You can speed up the execution speed of operations using the compiling\_threads integer variable, higher it is means higher speed for operations.

***

### Key Features

* **Database Lifecycle Management**\
  Open and close databases securely using temporary directories to prevent direct in-place modifications.
* **Table Operations**\
  Create, remove, and manage tables with custom `.table` extensions.
* **Record Operations**\
  Add, retrieve, and manipulate records stored in tables using type-safe conversions.
* **Data Persistence**\
  Ensure all changes are saved to disk with support for custom file headers and secure string compression.
* **Compression and Security**\
  Compress sensitive data for enhanced security, reducing the risk of compromise.
