Hola SANCHEZ GONZALEZ, JAVIER,
¡Bienvenido(a) a Microsoft Q&A!
Por favor ten en cuenta que nosotros no soportamos código ni scripts, sin embargo, para esto puedes utilizar la funcionalidad de validación de esquema que CosmosDB ofrece a través de Azure Cosmos DB SQL API. Aquí te dejo los pasos básicos para lograrlo:
Definir el esquema JSON: Al igual que en MongoDB, puedes definir un esquema JSON que describa la estructura de tus documentos. Este esquema se utiliza para validar los documentos que se insertan o actualizan en tu base de datos.
Crear una colección con validación de esquema: Al crear una colección en CosmosDB, puedes especificar un esquema JSON en el parámetro validator
. Aquí tienes un ejemplo de cómo hacerlo:
{
"id": "myCollection",
"indexingPolicy": {
"automatic": true,
"indexingMode": "consistent"
},
"schema": {
"validator": {
"$jsonSchema": {
"bsonType": "object",
"required": ["name", "age", "specialty", "diagnosis"],
"properties": {
"name": {
"bsonType": "string",
"description": "must be a string and is required"
},
"age": {
"bsonType": "int",
"minimum": 0,
"maximum": 120,
"description": "must be an integer between 0 and 120 and is required"
},
"specialty": {
"bsonType": "string",
"enum": ["general", "pediatrics", "neurology"],
"description": "can only be one of the enum values and is required"
},
"diagnosis": {
"bsonType": "string",
"description": "must be a string and is required"
}
}
}
}
}
}
Insertar documentos: Al insertar documentos en la colección, CosmosDB validará automáticamente los documentos contra el esquema definido. Si un documento no cumple con el esquema, se rechazará la operación de inserción o actualización.
Manejo de errores: Si un documento no pasa la validación, CosmosDB devolverá un error indicando qué parte del documento no cumple con el esquema. Esto te permite manejar los errores de validación en tu aplicación de manera adecuada.
Espero que información brindada fuera útil. Si necesitas más asistencia, estoy a tu disposición.
Atentamente,
Gao
Si esta respuesta resolvió tu consulta, por favor haz clic en 'Aceptar respuesta'. Esto nos ayuda a mejorar continuamente la calidad y relevancia de nuestras soluciones.