Gerenciando Bancos de Dados pelo Celular
Guia completo para conectar, consultar e gerenciar PostgreSQL, MySQL, MongoDB e outros bancos de dados diretamente do PocketCode.
Bancos de Dados no seu Android
O módulo de banco de dados do PocketCode oferece suporte a vários mecanismos diferentes e permite gerenciar seus dados sem precisar de um computador. Alguns mecanismos têm um console SQL completo; outros (MongoDB, Redis, Firestore) só um explorador, e este artigo diz quais.
Mecanismos compatíveis
- PostgreSQL — embutido no seu celular (ARM de 64 bits, sem root) ou o seu próprio servidor
- MySQL / MariaDB — o seu próprio servidor (não há MariaDB local)
- Neon — Postgres serverless
- Supabase — PostgreSQL gerenciado com API REST
- MongoDB Atlas — clusters gerenciados, abertos pela sua conta do Atlas
- MongoDB — seu próprio servidor, documentos NoSQL
- PlanetScale — MySQL escalável e serverless
- Turso — libSQL/SQLite na edge
- Upstash — Redis serverless
- Redis — seu próprio servidor
- Cloudflare D1 — SQLite no edge da Cloudflare
- Cloud Firestore — banco de dados de documentos do Firebase
Conexão rápida
PostgreSQL
-- Configuração da conexão
-- Host: db.myproject.com
-- Porta: 5432
-- Banco de dados: production
-- Usuário: admin
-- SSL: Obrigatório
-- Depois de conectado, execute consultas diretamente
SELECT
u.name,
COUNT(o.id) as total_orders,
SUM(o.amount) as total_spent
FROM users u
JOIN orders o ON u.id = o.user_id
WHERE o.created_at >= '2024-01-01'
GROUP BY u.name
ORDER BY total_spent DESC
LIMIT 10;
MongoDB
# Conecte ao seu próprio servidor ou ao Atlas
# URI: mongodb+srv://user:[email protected]/mydb
Cole a URI e o PocketCode preenche o formulário (um endereço mongodb+srv:// é
resolvido com DNS sobre HTTPS). Testar conexão faz um ping de verdade, com TLS e
o login incluídos. O que você recebe depois é a lista de coleções do banco, com uma
contagem de cada uma. Não há shell do MongoDB, nem editor de consultas, nem
construtor de agregações nesta versão, então você não consegue executar find nem
aggregate pelo app.
PostgreSQL (embutido, local)
Perfeito quando você quer um banco de dados de verdade no dispositivo sem alugar servidor. É o PostgreSQL 18.2 rodando dentro do app, então você escreve SQL padrão do PostgreSQL. Ele vem apenas para celulares ARM de 64 bits (não em emuladores x86_64 nem Chromebooks). O app precisa de conexão para entrar na conta; abri-lo com uma sessão já iniciada funciona offline, e depois disso o banco local roda no dispositivo:
-- Criar tabela local
CREATE TABLE IF NOT EXISTS notes (
id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
title TEXT NOT NULL,
content TEXT,
created_at TIMESTAMPTZ DEFAULT now(),
updated_at TIMESTAMPTZ DEFAULT now()
);
-- Inserir nota
INSERT INTO notes (title, content)
VALUES ('Minha primeira nota', 'Criada pelo PocketCode');
-- Buscar notas (sem diferenciar maiúsculas)
SELECT * FROM notes
WHERE title ILIKE '%pocket%'
ORDER BY updated_at DESC;
Recursos do gerenciador
Explorador visual
O painel lateral lista as suas conexões e as tabelas delas. A tela de detalhe de uma tabela abre as abas Colunas, Índices, Chaves, Gatilhos e DDL, e há também diagramas ER, um designer de esquemas, planos de execução e backups. O MySQL remoto não lista índices, chaves estrangeiras nem gatilhos.
Editor de consultas
- Realce de sintaxe SQL por dialeto (PostgreSQL, MySQL, SQLite)
- Uma fileira de sugestões de autocompletar para palavras-chave, tabelas, views, colunas e funções
- Histórico de consultas (500 entradas), consultas salvas e várias abas
- Exportação de resultados (CSV, JSON e outros formatos); o console guarda no máximo 500 linhas por consulta
- MongoDB, Redis, Upstash e Firestore não têm console SQL
Visualizador de dados
- Páginas de 100 linhas, ordenadas pela chave primária
- Toque no cabeçalho de uma coluna para ordenar e use a folha de filtros (12 operadores; BETWEEN ainda não funciona)
- Mantenha pressionada uma célula para editá-la, ou selecione linhas para copiá-las ou exportá-las; editar e apagar exigem uma chave primária utilizável
- Inserir linha não abre um formulário nesta versão
Casos de uso
Depuração em produção
Combine essas consultas com o terminal integrado para inspecionar processos enquanto acompanha os dados:
-- Encontrar erros recentes
SELECT error_message, COUNT(*) as count, MAX(created_at) as last_seen
FROM error_logs
WHERE created_at >= NOW() - INTERVAL '1 hour'
GROUP BY error_message
ORDER BY count DESC;
Monitoramento rápido
-- Status do banco de dados
SELECT
schemaname,
relname as table_name,
n_live_tup as row_count,
pg_size_pretty(pg_total_relation_size(relid)) as total_size
FROM pg_stat_user_tables
ORDER BY n_live_tup DESC;
Migrações de emergência
No Neon, Supabase, Turso e Cloudflare D1 o console começa no modo Somente leitura; desligue-o e cada gravação mostra o que vai fazer (e pede confirmação se for destrutiva) antes de rodar. Em qualquer conexão, instruções perigosas passam antes por uma verificação de modo seguro.
-- Adicionar coluna urgente
ALTER TABLE users ADD COLUMN phone VARCHAR(20);
-- Preencher dados
UPDATE users SET phone = profiles.phone
FROM profiles WHERE users.id = profiles.user_id;
-- Verificar
SELECT COUNT(*) FROM users WHERE phone IS NOT NULL;
Segurança
- As credenciais são armazenadas criptografadas no dispositivo
- Suporte a conexão SSL/TLS
- Opção de túnel SSH para conexões PostgreSQL e MySQL / MariaDB (não tem efeito nos outros mecanismos)
- O PocketCode não tem nenhum servidor próprio no meio: o app fala com o motor local, com o seu host ou com a API do provedor, e as conexões não são sincronizadas com a nuvem
Limites do plano gratuito
No plano gratuito você pode salvar uma conexão própria e um banco local, criar até 4 tabelas por conexão, ter 5 consultas salvas e usar 2 abas de console. O Pro remove esses limites.
Gerenciar bancos de dados pelo celular deixou de ser um sacrifício. Com o PocketCode você tem um cliente completo para vários mecanismos diferentes, direto no seu bolso. Explore também o testador de API e o editor de código para completar seu fluxo de trabalho móvel.
Gerenciador de BD