Duvida: usar arquivo do SQLite do dispositivo diretamente no PC

1,228 views
Skip to first unread message

Carlos

unread,
May 2, 2012, 2:29:52 PM5/2/12
to androidb...@googlegroups.com
Pessoal,

alguém sabe se tem alguma maneira de usar o arquivo gerado do sqlite diretamente no computador para alguma IDE do tipo "SQLite Expert" sem precisar ficar copiando o arquivo do dispositivo pro PC e vice versa?

Uso para debug e para criar/alterar dados de maneira rápida.

Att,
Carlos

Leonardo Jobim

unread,
May 2, 2012, 2:34:21 PM5/2/12
to androidb...@googlegroups.com
Não.
A única maneira que tem é gerar o arquivo sql e alocar na pasta raw para não criar a base programaticamente.
Melhor usar um servidor localhost com conexão para uma base sqllite nesse caso.

Guilherme Ventura

unread,
May 2, 2012, 2:36:03 PM5/2/12
to androidb...@googlegroups.com
http://www.leonardopereira.com/blog/2009/09/23/dica-rapida-instalando-o-sqlite-no-windows/ 
http://sourceforge.net/projects/sqlitebrowser/ 

Tente isso ;)

Em 2 de maio de 2012 15:29, Carlos <carlos...@gmail.com> escreveu:



--
Guilherme Ventura de Souza
Cel: (14)8102-2002 - Fone: (14)3263-0706
E-mail: vent...@gmail.com
Msn: vent...@hotmail.com

Carlos Eduardo Rührwiem

unread,
May 2, 2012, 2:39:04 PM5/2/12
to androidb...@googlegroups.com
Leonardo,

Tem como rodar o SQLite em uma máquina? Eu sempre imaginei que ao abrir o banco tivesse que usar um arquivo como base.

Att,
Carlos Eduardo Rührwiem


2012/5/2 Leonardo Jobim <leo....@gmail.com>

Alex Baule

unread,
May 2, 2012, 2:41:43 PM5/2/12
to androidb...@googlegroups.com

Leonardo Jobim

unread,
May 2, 2012, 2:47:02 PM5/2/12
to androidb...@googlegroups.com
Carlos,

É um arquivo, mas você pode utilizar um servidor para realizar operações SQL nele, da mesma forma que o Android faz. Praticamente todas linguagens de alto nível (Python, PHP, Java, Ruby) tem biblioteca ou módulo para conexão com SQLite.

O browser do sqlite lhe permitirá montar a base, mas não visualizá-la em tempo de execução no Android, só na máquina.

Abs,

Carlos Eduardo Rührwiem

unread,
May 2, 2012, 2:55:28 PM5/2/12
to androidb...@googlegroups.com
sempre tem um boca aberta que não entende a pergunta e trolla.

anyways... 

Acho que sem gambiarras do tipo essa:  

Não vou conseguir usar alguma ferramenta de banco no mesmo arquivo que a app está usando. O que eu queria era algo que tornaria mais prática a vida em vez de ficar copiando o banco do dispositivo pro pc pra mexer e depois copiar de volta pra usar.

Obrigado por tentar ajudar Leonardo.

Alex Baule

unread,
May 2, 2012, 2:59:13 PM5/2/12
to androidb...@googlegroups.com
Quem trollou ?

Danilo Monteiro

unread,
May 2, 2012, 3:01:21 PM5/2/12
to androidb...@googlegroups.com
Você quer acessar o sqlite do celular pelo pc sem baixar ele é isso?

2012/5/2 Alex Baule <alexw...@gmail.com>



--
Danilo Monteiro Ribeiro
"O único lugar onde o sucesso vem antes do trabalho é no dicionário."
"Faça com que seus SONHOS tenham INVEJA de seu FUTURO"
Graduando em Sistemas de Informação
http://lattes.cnpq.br/9054177799378154




Carlos Eduardo Rührwiem

unread,
May 2, 2012, 3:02:31 PM5/2/12
to androidb...@googlegroups.com
descubra entrando nesse link:  http://whatismyip.org/ 


Carlos Eduardo Rührwiem


2012/5/2 Alex Baule <alexw...@gmail.com>

Carlos

unread,
May 2, 2012, 3:04:57 PM5/2/12
to androidb...@googlegroups.com
isto!

Danilo Monteiro

unread,
May 2, 2012, 3:14:42 PM5/2/12
to androidb...@googlegroups.com
tecnicamente existe aplicativos que permitem visualizar arquivos do PC, meio que por ftp se não me engano, eu acredito que se o cel tiver com root dá para ver os arquivos do bd, e ai você pode modificar.

 
On Wed, May 2, 2012 at 4:04 PM, Carlos <carlos...@gmail.com> wrote:
isto!

Alex Baule

unread,
May 2, 2012, 3:19:12 PM5/2/12
to androidb...@googlegroups.com
Desculpa se vc nao sabe ler ou não entende o que é o SQLite...

Quem sabe sua resposta não esteja aqui http://bit.ly/ICnOnY

E se mesmo assim vc nao entender, eu posso explicar com um desenho bem bonito e colorido...

luciofm

unread,
May 2, 2012, 3:21:17 PM5/2/12
to androidb...@googlegroups.com
Parece que alguem ainda não entendeu a pergunta...

Lúcio Maciel
luc...@gmail.com


2012/5/2 Alex Baule <alexw...@gmail.com>:

Carlos Eduardo Rührwiem

unread,
May 2, 2012, 3:21:09 PM5/2/12
to androidb...@googlegroups.com
Danilo,

Achar o arquivo não é problema porque eu to colocando ele fora da pasta da aplicação. Então não preciso de root pra baixar ele, porém ainda assim, se usar FTP eu dependeria de ficar copiando pra lá e pra cá... só me pouparia usar o eclipe ou o windows explorer. 

Não é a solução mais rápida e pode dar problema.. dai prefiro como to fazendo agora.

Att,
Carlos Eduardo Rührwiem


2012/5/2 Danilo Monteiro <danilom...@gmail.com>

Alex Baule

unread,
May 2, 2012, 3:22:06 PM5/2/12
to androidb...@googlegroups.com
mas tbem posso ser legal e te responder

Se vc tiver root no seu celular, e ssh nele, vc pode montar o diretorio do app dentro do linux com sshfs.

Carlos Eduardo Rührwiem

unread,
May 2, 2012, 3:22:09 PM5/2/12
to androidb...@googlegroups.com
Por favor Alex,

desenha com um desenho BEM colorido pra mim como eu faço pra usar o sqlite do dispositivo SEM copiar o arquivo pra máquina.

Alex Baule

unread,
May 2, 2012, 3:23:35 PM5/2/12
to androidb...@googlegroups.com
Entendi sim... o problema é o conceito sqlite = arquivo, nao tem interaçao com rede, logo vc não consegue usar multiplas instancias via rede sem ser via algum file system compartilhado.. como o sshfs por exemplo.

Danilo Monteiro

unread,
May 2, 2012, 3:24:28 PM5/2/12
to androidb...@googlegroups.com
É carlos, não sei.

Existe app para modificar no android também, mas sem baixar não tenho ideia.

2012/5/2 Carlos Eduardo Rührwiem <carlos...@gmail.com>

Alex Baule

unread,
May 2, 2012, 3:24:40 PM5/2/12
to androidb...@googlegroups.com
Já dei a solução.

sshfs (a maneira mais simples)

Alex Baule

unread,
May 2, 2012, 3:31:49 PM5/2/12
to androidb...@googlegroups.com
habilita root, levanta um ssh com qquer app do market que tenha ssh (QuickSSHd Por exemplo)

Na sua Maquina:

sshfs root@<IP DO SEU ANDROID COM SSH HABILITADO>:/diretorio/do/seu/app /onde/vc/quer/montar -o allow_other

Alex Baule

unread,
May 2, 2012, 3:39:57 PM5/2/12
to androidb...@googlegroups.com
QuickSSHd rodando no Celular.

Ai está. Funcionando.

alex@alex-ubuntu-pc:~$ sudo sshfs ro...@192.168.42.129:/data/data/com.alexwbaule.flexprofile/databases/ /home/alex/TESTE -o allow_other
The authenticity of host '192.168.42.129 (192.168.42.129)' can't be established.
RSA key fingerprint is ce:f3:ed:7c:f5:cb:ee:08:bb:be:ef:5f:70:50:a1:2c.
Are you sure you want to continue connecting (yes/no)? yes
ro...@192.168.42.129's password:
alex@alex-ubuntu-pc:~$
alex@alex-ubuntu-pc:~$
alex@alex-ubuntu-pc:~$ ls -l TESTE/
total 8
-rw-rw---- 1 10063 10063 6144 Abr 30 21:39 carsdatabase
-rw-rw---- 1 10063 10063    0 Abr 30 21:39 carsdatabase-journal
alex@alex-ubuntu-pc:~$ cd TESTE
alex@alex-ubuntu-pc:~/TESTE$ sqlite3 carsdatabase
SQLite version 3.7.9 2011-11-01 00:52:41
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .schemas
Error: unknown command or invalid arguments:  "schemas". Enter ".help" for help
sqlite> .schema
CREATE TABLE android_metadata (locale TEXT);
CREATE TABLE cars (_id integer primary key autoincrement, name varchar not null, gasolina varchar not null, etanol varchar not null,tanque varchar not null,def boolean);
CREATE UNIQUE INDEX nameunique ON cars (name);
sqlite>


Isso atende suas necessidades ??

Carlos Eduardo Rührwiem

unread,
May 2, 2012, 4:17:03 PM5/2/12
to androidb...@googlegroups.com
Tinha dado uma saida...

Sim, a dica é válida. Não tenho como fazer root no aparelho porém o app sshdroid parece fazer o serviço sem precisar de root. (Não posso fazer o root porque o aparelho é da empresa)

Vou testar amanha!

Obrigado.

Danilo Monteiro

unread,
May 2, 2012, 6:49:00 PM5/2/12
to androidb...@googlegroups.com
Sem root é bronca

2012/5/2 Carlos Eduardo Rührwiem <carlos...@gmail.com>
Tinha dado uma saida...

Alex Baule

unread,
May 2, 2012, 8:32:34 PM5/2/12
to androidb...@googlegroups.com
O QuickSSHd tbem funciona sem root, mas ele vai criar um server ssh em portas altas. minha duvida é só saber se o /data/data/seu.app/databases vai estar disponivel para escrita para esse server...

o comando fica igual, só que com -p <porta> antes do "usuario@"

Danilo Monteiro

unread,
May 2, 2012, 9:26:37 PM5/2/12
to androidb...@googlegroups.com
a bronca que eu acho vai ser ele ver a database.

2012/5/2 Alex Baule <alexw...@gmail.com>

Carlos Eduardo Rührwiem

unread,
May 3, 2012, 7:52:47 AM5/3/12
to androidb...@googlegroups.com
Achar o database eu achei. (na app pra ficar mais fácil de pegar o arquivo estamos escrevendo no sdcard.. temporariamente claro.. antes de ir pra produção)

Mas ele ta como root... e obviamente eu não consigo trocar as permissões do arquivo nem o owner...

Alguma dica?

Carlos Eduardo Rührwiem


2012/5/2 Danilo Monteiro <danilom...@gmail.com>
a bronca que eu acho vai ser ele ver a database.

Alex Baule

unread,
May 3, 2012, 7:57:38 AM5/3/12
to androidb...@googlegroups.com
Vou testar aqui uma coisa, pera ai....

Alex Baule

unread,
May 3, 2012, 8:08:22 AM5/3/12
to androidb...@googlegroups.com
Funciona sem root...

sudo sshfs -p 2222 ro...@192.168.42.129:/mnt/sdcard /home/alex/TESTE -o allow_other

To usando o QuickSSHd, sem sudo mas ele cria esse "usuario root" pra conectar, e montei o sdcard (/mnt/sdcard) e consegui escrever nele...

alex@alex-ubuntu-pc:~/TESTE$ sqlite3 teste

SQLite version 3.7.9 2011-11-01 00:52:41
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> CREATE TABLE teste (teste varchar);
sqlite> .schema
CREATE TABLE teste (teste varchar);
sqlite> insert into teste VALUES ("valor");
sqlite> select * from teste;
valor
sqlite>

Bruno de Andrade

unread,
May 3, 2012, 9:49:11 AM5/3/12
to androidb...@googlegroups.com
Eu uso o adb shell com o aparelho conectado no pc.

http://www.basef.com.br/index.php?option=com_content&view=article&id=282

Gostaria de saber alguma forma com interface gráfica também.

-
Bruno de Andrade
https://play.google.com/store/apps/developer?id=Bruno+de+Andrade

Alex Baule

unread,
May 3, 2012, 9:58:14 AM5/3/12
to androidb...@googlegroups.com
Desse jeito vc está no celular via console. E nao é todo celular q tem o binario do sqlite3.

No emulador tem... no SGSII por exemplo, nao tem. (com firmware original)

Carlos Eduardo Rührwiem

unread,
May 3, 2012, 10:20:05 AM5/3/12
to androidb...@googlegroups.com
Então... depois de resolver uns outros problemas por aqui.. voltei a mexer e consegui uma solução aceitável.

Usei a dica do Alex pra criar a pasta de SSH mas por estar no windows (coisas da empresa) não consegui mapear facilmente a partição para uma pasta.. coisa que fiz em 2 tapas numa VMzinha de teste. Pra quem tem linux fica fácil.. mas pra quem não está eu tentei usando o tal do win-sshfs mas da um erro besta quando tenta iniciar e não rola..  Dai fiz usando login no ssh usando o cyberduck e fiz uma pasta sincronizada. Dai agora aperto pra sincronizar quando vou mexer e depois aperto denovo quando acabei com as alterações. (podendo escolher se é só download ou só upload na hora de fazer o sync) 

Então sem muito transtorno agora estou editando a base do dispositivo usando o "SQLite Expert".

Obrigado pelas dicas ai Alex, ajudou bastante.

Att,
Carlos Eduardo Rührwiem


2012/5/3 Alex Baule <alexw...@gmail.com>

Alex Baule

unread,
May 3, 2012, 10:24:06 AM5/3/12
to androidb...@googlegroups.com
De nada... (e eu nao trollei, só quis q vc entendesse como é e como funciona o Sqlite, que é um "banco de dados de arquivo"), por isso a dificuldade de mexer nele remoto.

Carlos Eduardo Rührwiem

unread,
May 3, 2012, 11:56:30 AM5/3/12
to androidb...@googlegroups.com
Acredite, isso eu sabia.. eu só não sabia como resolver o problema...

Carlos Eduardo Rührwiem

unread,
May 28, 2012, 7:30:38 AM5/28/12
to androidb...@googlegroups.com
Revivendo o tópico...

Para quem tiver interesse em uma solução alternativa, descobri que o H2 suporta android.


Entre suas features estão:

* Multiple connections.
* Server mode (accessing a database on a different machine over TCP/IP).

Ele também tem função de encriptar o arquivo do DB... (tava precisando disso também mas estava enrolando)

Certamente irei testar no futuro... se alguém testar coloque as opiniões! :)

Att,

Carlos Eduardo Rührwiem


2012/5/3 Carlos Eduardo Rührwiem <carlos...@gmail.com>
Reply all
Reply to author
Forward
0 new messages