Creare un DataBase sqlite3
Da Gambas-it.org - Wikipedia.
Nella presente pagina mostreremo qualche un esempio pratico per creare in Gambas un DataBase con sqlite3.
Il codice del seguente esempio [Nota 1] crea una cartella nella Home chiamata "MyReport" e all'interno il database Report_DB.sqlite:
Public Sub Form_Open() Dim vConnessione As New Connection Dim vPercorso As String ' variabile per il percorso in cui creare il db Dim vDatabase As String ' variabile per il nome che diamo al database Dim vTabella As Table Dim vTabellaUno As String ' variabile per la creazione della tabella UNO e dei campi Dim vTabellaDue As String ' variabile per la creazione della tabella DUE e dei campi Dim vRisultato As Result vPercorso = User.Home &/ "MyReport/" ' definisce il percorso del database vDatabase = "Report_DB.sqlite" ' definisce il nome del database vTabellaUno = "CREATE TABLE 'NomeTabellaUno'" & ' nome della tabella e dei campi che si andrà a creare "('id_TabellaUno' INTEGER PRIMARY KEY," & ' chiave primaria "'NomeCampoUnoNumerico' INTEGER Default '0'," & ' nome del campo, tipo e valore predefinito "'NomeCampoDue' VARCHAR(55) Default Null," & ' nome del campo, tipo e valore predefinito "'NomeCampoTre' VARCHAR(55) Default Null);" ' nome del campo, tipo e valore predefinito vTabellaDue = "CREATE TABLE 'NomeTabellaDue'" & "('id_TabellaDue' INTEGER PRIMARY KEY," & "'NomeCampoUnoNumerico' INTEGER Default '0'," & "'NomeCampoDue' VARCHAR(55) Default Null," & "'NomeCampoTre' VARCHAR(55) Default Null);" With vConnessione .Type = "sqlite3" ' indicazione del tipo di database da utilizzare .Host = vPercorso .Login = "" .Password = "" End With If Not Exist(vPercorso) Then ' se non esiste la cartella MyReport Mkdir User.Home & "/MyReport" ' creala End If vConnessione.Open() ' apre la connessione If Not vConnessione.Databases.Exist(vDatabase) Then ' verifica che il db non esista già vConnessione.Databases.Add(vDatabase) ' crea il database vConnessione.Close() ' chiude la connessione vConnessione.Name = vDatabase ' alla connessione assegna il nome del database vConnessione.Open() ' riapre la connessione vRisultato = vConnessione.Exec(vTabellaUno) ' aggiunge al database la tabella con i campi, come sopra definito vRisultato = vConnessione.Exec(vTabellaDue) ' aggiunge al database la tabella con i campi, come sopra definito Message.Info("Nella Home è stata creata la cartella MyReport" & Chr$(10) & "e il database Report_DB.sqlite", "Ok") ' informa che il database è stato creato Endif vConnessione.Close() ' chiude la connessione End
Successivamente per connettersi:
Dim vConnessione As New Connection With vConnessione .Type = "sqlite3" ' indicazione del tipo di database da utilizzare .Name = "Report_DB.sqlite" .Host = User.Home &/ "MyReport/" .Login = "" .Password = "" End With vConnessione.Open() ' qui va scritto il codice per agire sul database vConnessione.Close()
Note
[1] Questo esempio è proposto dal membro ilfurlan del forum gambas-org.it