} Skip to content

updateMany()


title: updateMany description: Atualiza múltiplos registros do banco de dados em lote

Section titled “title: updateMany description: Atualiza múltiplos registros do banco de dados em lote”

Atualiza múltiplos valores aplicando uma função ou objeto de atualização em uma única operação.

await db.updateMany(
keys: string[],
updater: ((value: any, key: string) => any) | Record<string, any>
): Promise<number>
  • keys: Array de chaves para atualizar
  • updater: Função de atualização ou objeto com novos valores

Número de chaves atualizadas com sucesso.

await db.setMany({
'user:1': { name: 'João', age: 25, active: true },
'user:2': { name: 'Maria', age: 30, active: false },
'user:3': { name: 'Pedro', age: 35, active: true }
});
// Incrementar idade de todos os usuários
const updated = await db.updateMany(
['user:1', 'user:2', 'user:3'],
(user) => ({ ...user, age: user.age + 1 })
);
console.log(updated); // 3
// Ativar todos os usuários
const updated = await db.updateMany(
['user:1', 'user:2', 'user:3'],
{ active: true, lastUpdate: new Date() }
);
// Aplicar desconto apenas para usuários VIP
const updated = await db.updateMany(
['order:1', 'order:2', 'order:3'],
(order, key) => {
if (order.userType === 'VIP') {
return { ...order, discount: 0.1, total: order.total * 0.9 };
}
return order;
}
);
// Padronizar formato de telefone
const phoneKeys = await db.search('phone:');
const updated = await db.updateMany(
phoneKeys.map(item => item.key),
(phone) => phone.replace(/\D/g, '') // Remove caracteres não numéricos
);
  • Atualizações em lote de configurações
  • Migração de dados
  • Aplicação de transformações uniformes
  • Sincronização de estados