sql >> Base de Datos >  >> NoSQL >> MongoDB

Cualquier trabajo con la clave Mongodb no puede contener . o $?

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, ".")