@teamnet/ic-orm
Version:
Database Management System for Total.js v4 and standalone
133 lines (104 loc) • 3.43 kB
Markdown
# 📚 Documentación de icorm para Total.js v4
Documentación completa para desarrolladores que trabajen con bases de datos usando icorm en Total.js v4.
## 🎯 Bases de Datos Soportadas
icorm soporta múltiples sistemas de bases de datos con una API unificada:
### 🍃 [MongoDB](./mongodb/)
Base de datos NoSQL orientada a documentos
- **59 tests certificados**
- GridFS para archivos grandes
- Aggregation pipelines
- ReplicaSets y alta disponibilidad
- [📖 Ver Documentación Completa](./mongodb/)
### 🐘 [PostgreSQL](./postgresql/)
Base de datos SQL relacional avanzada
- **108 tests certificados**
- Connection pooling optimizado
- Transacciones ACID
- BLOB storage con Large Objects
- [📖 Ver Documentación Completa](./postgresql/)
## 📖 Selecciona Tu Base de Datos
### 🍃 [MongoDB - Documentación Completa →](./mongodb/)
- Guía de inicio rápido
- Connection pooling y ReplicaSets
- Operaciones CRUD y Query Builder
- Operadores matemáticos (+, -, *, /)
- Operaciones avanzadas (Scalar, Aggregation, GridFS)
- Ejemplos prácticos completos
### 🐘 [PostgreSQL - Documentación Completa →](./postgresql/)
- Guía de inicio rápido
- Connection pooling v16 optimizado
- Operaciones CRUD y Query Builder
- Operadores matemáticos y SQL específicos
- Transacciones y operaciones avanzadas
- Ejemplos prácticos completos
## 🔑 Conceptos Clave
### DBMS Instance
Cada operación comienza creando una instancia de DBMS:
```javascript
const db = DBMS();
```
### Promesas y Callbacks
icorm soporta ambos patrones:
```javascript
// Con promesas (recomendado)
const users = await DBMS().find('users').promise();
// Con callbacks
DBMS().find('users').callback(function(err, users) {
// ...
});
```
### Nombres de Tablas/Colecciones
Formato: `[alias/]collection`
```javascript
// Usando alias por defecto
db.find('users')
// Usando alias específico
db.find('mongo/users')
db.find('mongo-rs/users')
```
### Query Builder
Todas las operaciones retornan un QueryBuilder que permite encadenar métodos:
```javascript
await db.find('users')
.where('active', true)
.where('age', '>', 25)
.sort('name')
.take(10)
.promise();
```
## 🆘 Soporte y Recursos
### Documentación Oficial
- [Total.js Documentation](https://docs.totaljs.com/total4/)
- [MongoDB Documentation](https://docs.mongodb.com/)
- [MongoDB Node.js Driver](https://mongodb.github.io/node-mongodb-native/)
### Tests de Referencia
Ver los tests completos en: `/tests/mongodb-tests/tests/test.js`
- 59 tests certificados
- Ejemplos de todos los métodos
- Casos de uso reales
### Reportar Problemas
Si encuentras algún problema o tienes sugerencias:
1. Revisa la documentación relevante
2. Verifica los ejemplos en `/tests/mongodb-tests/`
3. Consulta el código fuente en `mongo.js`
## ✅ Características Certificadas
Esta documentación cubre la versión certificada de icorm que incluye:
- ✅ Compatible con MongoDB 7.x
- ✅ Compatible con MongoDB Driver 4.x+
- ✅ Compatible con Total.js v4
- ✅ Connection pooling optimizado
- ✅ Soporte para ReplicaSets
- ✅ Operadores matemáticos completos
- ✅ Thread-safe y preparado para alta concurrencia
- ✅ GridFS para almacenamiento de archivos
- ✅ Aggregation pipelines
- ✅ 59 tests unitarios certificados
**Última actualización:** 2025-10-07
**Versión de icorm:** 1.2.0
**MongoDB:** 7.x
**Total.js:** 4.x