Sqlite

Cleidson

Member
Prezados,
Boa noite. Em primeiro lugar pedir desculpas pela ignorância. Confesso que li alguns materiais, peguei alguns exemplos, mas, minha dúvida ainda continuou. Então segue minha dúvida:

Em Starter em verifiquei se existe um banco de dados Sqlite, senão, inicio um e crio as tabelas. Segue o código

B4X:
Sub Process_Globals
    'These global variables will be declared once when the application starts.
    'These variables can be accessed from all modules.
    
    Private xui As XUI
        
    Public SQLConpe As SQL
    Public SQLDataBasePath As String
    Public SQLDataBaseName As String

End Sub

Sub Service_Start (StartingIntent As Intent)
    
    Service.StopAutomaticForeground 'Starter service can start in the foreground state in some edge cases.    
    
    SQLDataBasePath = File.DirInternal
    SQLDataBaseName = "db.db"
        
    'check if the database already exists
    If File.Exists(SQLDataBasePath, SQLDataBaseName) = False Then        
        SQLConpe.Initialize(SQLDataBasePath, SQLDataBaseName, True)
        CreateTable
    Else        
        SQLConpe.Initialize(SQLDataBasePath, SQLDataBaseName, True)        
    End If    
    
End Sub


Até aqui acredito que funcione bem. Para ser sincero, eu gosto de visualizar o que está ocorrendo no banco de dados de forma visual, mas, ainda não descobrir onde se localiza o banco de dados no celular. Pesquisar.

Nesse ponto que eu não entendi como funciona a dinâmica. Meu projeto vai ter várias telas de CRUD. Minha dúvida: é necessário realizar o procedimento de verificação e inicialização do BD em todas as telas como o código acima?
 

asales

Expert
Licensed User
Longtime User
Prezados,
Boa noite. Em primeiro lugar pedir desculpas pela ignorância. Confesso que li alguns materiais, peguei alguns exemplos, mas, minha dúvida ainda continuou. Então segue minha dúvida:
Até aqui acredito que funcione bem. Para ser sincero, eu gosto de visualizar o que está ocorrendo no banco de dados de forma visual, mas, ainda não descobrir onde se localiza o banco de dados no celular. Pesquisar.
A pasta File.DirInternal é a pasta interna do seu app. Você não consegue visualizá-la sem root no aparelho. Existem muitas restrições de pastas nas novas versões do Android.
Nesse ponto que eu não entendi como funciona a dinâmica. Meu projeto vai ter várias telas de CRUD. Minha dúvida: é necessário realizar o procedimento de verificação e inicialização do BD em todas as telas como o código acima?
Você só inicializa o SQL 1vez. Depois é só executar o SQL referente ao respectivo CRUD em cada tela.
 
Top