Como o desenvolvedor poderia acessar esse banco de dados com suas respectivas tabelas em um SGBD?
Como o desenvolvedor poderia acessar esse banco de dados com suas respectivas tabelas em um SGBD?
Fala, Moisés! Tudo certo ?
Nesse caso do banco de dados utilizando no curso, daria para fazer sim uma conexão externa com um SGBD, mas ela seria um pouco mais complicada, por causa que estamos utilizando o sqlite interno do próprio expo. A configuração e preparação de um banco de dados tende a ser um pouco mais demorada, mas o expo já dá conta dessas configurações para a gente.
Como podemos ver na própria documentação do expo usando sqlite , quando utilizamos a função SQLite.openDatabase
ele vai procurar uma tabela com o nome passado e caso não encontre ele irá criar uma, e ele irá criar essa tabela dentro do FileSystem.documentDirectory
do expo, então esse arquivo não será disponibilizado em um diretório comum do nosso computador por exemplo.
Uma forma de acessar essa tabela em um SGBD seria da seguinte forma, existem funções que podemos utilizar para acessar o File-System do expo e acessar esse arquivo do SQLite, depois disso, podemos adicionar esse arquivo em um SGBD para ver as tabelas e o dados que esse banco de dados possui. Um exemplo de SGBD que poderia ser utilizado seria o Db browser.
Para acessar o local que fica o arquivo devemos acessar o FileSystem.documentDirectory/SQLite/nomedobanco
, as libs que devem ser instaladas e importadas são as seguintes:
import * as FileSystem from 'expo-file-system';
import * as Sharing from 'expo-sharing';
Depois disso, podemos criar uma função de exportar a Database que pode ser chamada ao pressionar um botão,e com isso o código ficará da seguinte forma:
const exportDB = async () => {
await Sharing.shareAsync(FileSystem.documentDirectory + 'SQLite/db.db');
}
Com isso, essa função vai navegar até dentro do FileSystem.documentDirectory/SQLite
e procurar pelo banco de dados db.db e baixar o arquivo no dispositivo onde a aplicação está sendo executada.
Caso tenha interesse em entender um pouco mais sobre a criação de um banco de dados SQLite, recomendo o artigo SQLite: da instalação até sua primeira tabela .
Eu espero que tenha ajudado e qualquer coisa estou por aqui.
Abraço e bons estudos!