Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "AndreaBertini/Prove0"
Differenze tra le versioni 1 e 41 (in 40 versioni)
Versione 1 del 04/04/2007 14.11.59
Dimensione: 440
Commento:
Versione 41 del 29/05/2007 23.22.58
Dimensione: 3733
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 2: Linea 2:
[[BR]]
||<tablestyle="float:right; font-size: 0.9em; width:35%; background:#F1F1ED; margin: 0 0 1em 1em;" style="padding:0.5em;">'''Indice'''[[BR]] [[TableOfContents]]||
[[BR]]||<tablebgcolor="#f1f1ed" tablewidth="35%" tablestyle="margin: 0pt 0pt 1em 1em; float: right; font-size: 0.9em;"style="padding: 0.5em;">'''Indice'''[[BR]] [[TableOfContents]] ||
Linea 5: Linea 4:
= Introduzione =
Linea 7: Linea 5:
testo = 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.
Linea 9: Linea 8:
= Titolo 1 = == Premessa ==
Nell'esempio che segue ci agganciamo ad un database MySql già creato precedentemente. I dati di partenza sono i seguenti:
Linea 11: Linea 11:
testo {{{
 * nome del server: localhost
 * username: il vs nome utente per MySql
 * password: la Vs password per MySql
 * database name: provadb
}}}
Linea 13: Linea 18:
== Titolo 2 == == 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:
Linea 15: Linea 21:
= Titolo 1 = {{{
'creo un nuovo oggetto connessione
PUBLIC connessione AS NEW Connection
Linea 17: Linea 25:
testo '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
}}}
Linea 19: Linea 38:
== Titolo 2 == 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.
Linea 21: Linea 40:
testo == Esecuzione di un'interrogazione (soluzione interna) ==
E' la soluzione base, più semplice.Il codice da copiare:
Linea 23: Linea 43:
= Ulteriori risorse = {{{
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
}}}
Linea 25: Linea 58:
 * risorsa 1
 * risorsa 2
== 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:
Linea 28: Linea 61:
## da questo punto in poi non modificare!
----
CategoryNuoviDocumenti
{{{
'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 '''

BR||<tablebgcolor="#f1f1ed" tablewidth="35%" tablestyle="margin: 0pt 0pt 1em 1em; float: right; font-size: 0.9em;"style="padding: 0.5em;">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