Apps

Bea.db: queries do app

Bea.db: queries do app

Toda app no BeaDev tem um banco PostgreSQL próprio. Você acessa via Bea.db.

Criar tabelas

useEffect(() => {
  Bea.db.execute(`
    CREATE TABLE IF NOT EXISTS app_clientes_x7m2 (
      id SERIAL PRIMARY KEY,
      nome TEXT NOT NULL,
      telefone TEXT,
      created_at TIMESTAMPTZ DEFAULT now()
    )
  `);
}, []);

⚠️ Convenção: nomes de tabela seguem app_<entidade>_<hash> onde hash é único do app (a IA gera). Não compartilhe tabelas entre apps sem usar App Connections.

Ler dados

const { rows } = await Bea.db.query(
  "SELECT * FROM app_clientes_x7m2 ORDER BY nome"
);
setClientes(rows);

Com parâmetros (sempre use, nunca concatene):

await Bea.db.query(
  "SELECT * FROM app_clientes_x7m2 WHERE nome ILIKE $1",
  [`%${busca}%`]
);

Inserir / atualizar / deletar

// Insert
await Bea.db.execute(
  "INSERT INTO app_clientes_x7m2 (nome, telefone) VALUES ($1, $2)",
  [nome, tel]
);

// Update
await Bea.db.execute(
  "UPDATE app_clientes_x7m2 SET telefone = $1 WHERE id = $2",
  [novoTel, id]
);

// Delete
await Bea.db.execute(
  "DELETE FROM app_clientes_x7m2 WHERE id = $1",
  [id]
);

Limites

  • Timeout de 10s por query
  • 240 requests/min por app (proteção contra loop)
  • Apenas tabelas do próprio app — cross-app só via App Connections