Las Restricciones de nombres sobre bases de datos, colecciones y nombres de campos tienen propósitos prácticos. Intentan garantizar que las consultas no sean ambiguas y que se puedan crear nombres de archivo válidos.
Por ejemplo:
-
MongoDB usa notación de puntos para acceder a elementos de una matriz o subdocumento.
-
MongoDB usa el signo de dólar ($) para representar operadores (por ejemplo,
$inc
). -
Nombres de bases de datos corresponden a archivos creados en el sistema operativo, y hay caracteres reservados para separadores de ruta y comodines.
La solución obvia (que también es sugerida en el manual de MongoDB
) es utilizar un carácter diferente. Por ejemplo, los equivalentes Unicode de ancho completo de $
y .
se mostrarán de manera similar pero no están reservados:
- U+FF04 (es decir, "$")
- U+FF0E (es decir, ".")