IndiceBR TableOfContents |
Gambas e i database
Gambas si presta benissimo ad essere utilizzato come front-end per la gestione di basi di dati, nei formati MySql e Sqlite, Postgresql.
Premessa
Nell'esempio che segue ci agganciamo ad un database MySql già creato precedentemente. I dati di partenza sono i seguenti:
* nome del server: localhost * username: il vs nome utente per MySql * password: la Vs password per MySql * database name: provadb
Apertura del database MySql
Per prima cosa apriamo il nostro Gambas e creiamo un nuovo progetto. Una volta entrati inseriamo nel codice della form di partenza queste istruzioni:
'creo un nuovo oggetto connessione PUBLIC connessione AS NEW Connection 'subroutine di connessione PUBLIC SUB crea_connessione(mydb AS String,mytype AS String,myhost AS String,myuser AS String, mypass AS String) 'definisco i parametri della connessione connessione.mydb="provadb" connessione.mytype="mysql" connessione.myhost="localhost" connessione.myuser="mioid" connessione.mypass="miapassword" connessione.Open message("Apertura database eseguita con successo.") END
Potete agganciare questa routine ad un bottone creato sulla form in modo da provare subito il codice. naturalmente questo è un esempio minimale. In effetti è importante effettuare interrogazioni sul database.
Esecuzione di un'interrogazione (soluzione interna)
E' la soluzione base, più semplice.Il codice da copiare:
PUBLIC SUB Button1_Click() 'dimensiono la variabile del risultato DIM res AS Result 'dimensiono la variabile contenente la stringa DIM mysql AS String 'stringa di interrogazione tabella accounts del database mysql = "SELECT * FROM accounts ORDER By id" 'eseguo la ricerca res = connessione.Exec(mysql) 'mi posiziono sul primo record del recordset res.MoveLast END
Esecuzione di un'interrogazione (soluzione esterna)
In questo caso la stringa sql risiede in un file fisico letto da Gambas ed utilizzato per effetuare la query. Per prima cosa si crea una funzione che legge la stringa di ricerca poi da utilizzare:
'Author : Andy60 'Name : SelectedSql 'Info : Load a file containing sql script 'Attributes : sqlName , filename with directory PUBLIC FUNCTION selectedSql(sqlName AS String) AS String DIM linea AS String DIM myfile AS File OPEN sqlName FOR READ AS #myfile LINE INPUT #myfile, linea CLOSE #myfile RETURN linea END
Successivamente si utilizza la funzione per effettuare l'interrogazione:
PUBLIC SUB LoadSimList() 'pulizia del componente che dovrà visualizzare i dati (listview) ListView1.Clear 'utilizzo la funzione di cui sopra mysql = selectedSql("listasim.sql") resManager = connessione.exec(mysql) ......codice di utilizzo del recordset END
Copia, incolla e contribuisci!
Gambas è un programma divertente da utilizzare! Copia e incolla il codice presente in questa sezione e usalo nelle tue applicazioni! Contribuite alla Guida regalando il vs codice (seguire il template delle contribuzioni). Siete invitati a suggerire anche nuove categorie da inserire nella rubrica (seguire il template delle categorie).
Categorie
- Funzioni
- Classi
- Database e back-end
Network & comunicazione
Interfaccia utente & front-end
- Xml
- Sdl
- Grafica 2D e 3D
Immagine(Icone/Piccole/warning.png,50,left)IMPORTANTE: questa Guida è stata testata su Gambas 1.9.49