Registry / database / multi-db-orm

multi-db-orm

JSON →
library3.1.4jsnpmunverified

Multi DB ORM v3.1.4 is a TypeScript-shipping library that provides a unified CRUD interface for SQL and NoSQL databases including MongoDB, Firestore, SQLite, MySQL, Oracle, and SAP HANA. It supports backup, restore, and migration across databases. The library is actively maintained on GitHub and requires installing target-specific database drivers as optional peer dependencies. Key differentiators: single API for multiple DBs, built-in backup/restore, and cross-database migration support. Release cadence is not documented; latest version is 3.1.4.

npm install multi-db-orm
INSTALL
IMPORT
SIG · MULTI-DB-ORM
M
multi-db-orm
databasejavascriptv3.1.4
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

MultiDbORM
import { MultiDbORM } from 'multi-db-orm'
const MultiDbORM = require('multi-db-orm').MultiDbORM
TypeScript ships; CJS requires destructuring only if using named exports, but default export is not provided. Use named import.
FireStoreDB
import { FireStoreDB } from 'multi-db-orm'
import FireStoreDB from 'multi-db-orm'
Named export, not default. Requires firebase-admin as peer dependency.
MongoDB
import { MongoDB } from 'multi-db-orm'
const MongoDB = require('multi-db-orm')
Named export. Requires mongodb driver as peer dependency.
SQLiteDB
import { SQLiteDB } from 'multi-db-orm'
import SQLiteDB from 'multi-db-orm'
Named export. Requires sqlite3 as peer dependency.
OracleDB
import { OracleDB } from 'multi-db-orm'
const { OracleDB } = require('multi-db-orm');
Named export. Requires oracledb as peer dependency.
MySQLDB
import { MySQLDB } from 'multi-db-orm'
Named export. Requires mysql driver as peer dependency.
HanaDB
import { HanaDB } from 'multi-db-orm'
Named export. Requires @sap/hana-client as peer dependency.

Shows basic insert and get operations with Firestore using a service account file. Assumes firebase-admin is installed.

import { FireStoreDB } from 'multi-db-orm'; import * as admin from 'firebase-admin'; const firebasedb = new FireStoreDB('/path/to/serviceAccountKey.json'); async function example() { // Create a document in Firestore const docRef = await firebasedb.insert('users', { name: 'Alice', email: 'alice@example.com', id: 'user123' // optional, otherwise uses Date.now() }); console.log('Created document:', docRef); // Get all documents from 'users' collection const users = await firebasedb.get('users'); console.log('Users:', users); } example().catch(console.error);
Debug
Known issues
gotchaFirestoreDB requires a documentPath for each document: either as last parameter in CRUD functions or as 'id' field in objects. If none provided, Date.now() is used which may cause collisions.
fix
Always provide an 'id' field or explicit document path to avoid unexpected duplicate IDs.
affects: >=1.0.0
gotchaOracle field names are case insensitive. Always use snake_case for field names to avoid issues.
fix
Use snake_case field names in objects when using OracleDB.
affects: >=1.0.0
gotchaFirestore does not support undefined values. The library automatically converts undefined to null on insert/update.
fix
Be aware that undefined values become null in Firestore.
affects: >=1.0.0
gotchaAll CRUD functions are async (return promises). Forgetting to await may cause unexpected behavior.
fix
Always use await or .then() when calling insert, get, update, delete, etc.
affects: >=1.0.0
gotchaOptional database drivers (e.g., mongodb, firebase-admin, sqlite3) must be installed separately. They are not included as dependencies.
fix
Run npm install with the required driver for your database: npm install mongodb, npm install firebase-admin, etc.
affects: >=1.0.0
Errors
Common errors & fixes
Cannot find module 'multi-db-orm'
Package not installed.
fix
Run 'npm install multi-db-orm'.
TypeError: multi-db-orm_1.MongoDB is not a constructor
Incorrect import: using default import instead of named import.
fix
Use 'import { MongoDB } from 'multi-db-orm'' instead of 'import MongoDB from 'multi-db-orm''.
Error: Cannot find module 'sqlite3'
Optional SQLite driver not installed.
fix
Run 'npm install sqlite3'.
Firestore: 'id' field missing, using Date.now()
Document ID not provided via 'id' field or explicit parameter.
fix
Add an 'id' field to your object or pass document path as last parameter.
Upgrade
Version history
3.1.4latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
10 hits · last 30 days
node
8
Amazon
1
Resources
multi-db-orm — npm install multi-db-orm · libregistry