Telefonino.net network
 
| HOMEPAGE | INDICE FORUM | REGOLAMENTO | ::. NEI PREFERITI .:: | RSS Forum | RSS News | NEWS web | NEWS software |
| PUBBLICITA' | | ARTICOLI | WIN XP | VISTA | WIN 7 | REGISTRI | SOFTWARE | MANUALI | RECENSIONI | LINUX | HUMOR | HARDWARE | DOWNLOAD | | CERCA nel FORUM » |

Torna indietro   WinTricks Forum > Software > Programmazione

Notices

Rispondi
 
Strumenti discussione
Vecchio 08-11-2007, 14.31.23   #1
maefe
Senior Member
 
Registrato: 20-08-2002
Loc.: groppello d'adda
Messaggi: 414
maefe promette bene
query SQL in VB6

Ho cercato nel forum ma non ho trovato una risposta SU come visualizzare il VB6 una query fatta in SQL.

Mi spiego meglio, fatta una qualsiasi query usando SQL, come posso mostrare il risultato in una casella di testo?

grazie
maefe non è collegato   Rispondi citando
Vecchio 08-11-2007, 15.32.32   #2
LoryOne
Gold Member
WT Expert
 
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.503
LoryOne è un gioiello raroLoryOne è un gioiello raroLoryOne è un gioiello raro
Dopo che il motore SQL ha elaborato il risultato, quest' ultimo è memorizzato in un recordset.
Un recordset è come un foglio di Excel,una tabella di ACCESS, una tabella di Word, una griglia in pratica.
Così come accedi alle celle specificando riga e colonna, così accedi ai record distinti attraverso delle proprietà del recordset.
LoryOne non è collegato   Rispondi citando
Vecchio 08-11-2007, 15.37.43   #3
maefe
Senior Member
 
Registrato: 20-08-2002
Loc.: groppello d'adda
Messaggi: 414
maefe promette bene
che sarebbe quello della tabella che ho interrogato.

se dovessi usare il comando GROUP (che evita i doppi, unendo diversi record) vedo solo un record?
maefe non è collegato   Rispondi citando
Vecchio 08-11-2007, 15.45.28   #4
LoryOne
Gold Member
WT Expert
 
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.503
LoryOne è un gioiello raroLoryOne è un gioiello raroLoryOne è un gioiello raro
Ti riferisci a GROUP BY ... HAVING del linguaggio SQL ?
Guarda, ti spiego da cosa deriva la parola Recordset.
Record(Riga) Set(righe), ossia gruppo di righe.
LoryOne non è collegato   Rispondi citando
Vecchio 08-11-2007, 15.47.55   #5
LoryOne
Gold Member
WT Expert
 
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.503
LoryOne è un gioiello raroLoryOne è un gioiello raroLoryOne è un gioiello raro
Quota:
Inviato da maefe
che sarebbe quello della tabella che ho interrogato.

se dovessi usare il comando GROUP (che evita i doppi, unendo diversi record) vedo solo un record?
Mmm, SELECT DISTINCT[Row]
LoryOne non è collegato   Rispondi citando
Vecchio 08-11-2007, 16.10.37   #6
maefe
Senior Member
 
Registrato: 20-08-2002
Loc.: groppello d'adda
Messaggi: 414
maefe promette bene
grazie anche se sono al punto di prima.
una volta fatta la query sul mio database (access), con

do until eof
....

elenco i records filtrati?
maefe non è collegato   Rispondi citando
Vecchio 08-11-2007, 16.15.43   #7
LoryOne
Gold Member
WT Expert
 
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.503
LoryOne è un gioiello raroLoryOne è un gioiello raroLoryOne è un gioiello raro
Furbastro (Y)
Tu hai scoperto il modo più veloce per creare una query sintatticamente corretta ed interpretabile dal motore JET/ODBC.
Avendo creato le relazioni tra tabella, la query si forma da sola.
Muy bien, ma devi capire che SQL è un po come il linguaggio parlato.
Detto questo, devi far riferimento al motore, poi eseguira la query ed agire sul recordset.
do until eof, ecc, ecc.
Si, il senso è quello, ma è l'EOF del recordset.
non ti dico altro, ora è tempo che procedi da solo.
You're on the right way. Good luck.
LoryOne non è collegato   Rispondi citando
Vecchio 08-11-2007, 16.25.50   #8
maefe
Senior Member
 
Registrato: 20-08-2002
Loc.: groppello d'adda
Messaggi: 414
maefe promette bene
mi è piaciuto il "furbastro".
le query semplici, riesco a gestirle e visualizzarle scorrendo il database record per record.
mi manda in crisi il GROUP.
maefe non è collegato   Rispondi citando
Vecchio 09-11-2007, 09.46.54   #9
maefe
Senior Member
 
Registrato: 20-08-2002
Loc.: groppello d'adda
Messaggi: 414
maefe promette bene
noto con rammarico che non riesco ad ottenere alcun aiuto.
se mi sono rivolto al forum è perchè evidenti miei limiti non mi hanno consentito di proseguire nonostante gli inviti a proseguire da solo.
un grazie sincero comunque.
maefe non è collegato   Rispondi citando
Vecchio 10-11-2007, 16.31.50   #10
maefe
Senior Member
 
Registrato: 20-08-2002
Loc.: groppello d'adda
Messaggi: 414
maefe promette bene
mi permetto di insistere.
Ho risolto parzialmente il problema scrivendo qualche riga di codice in + come sege:

Filtro$ = "SELECT * FROM BOLLE WHERE NUMEROFATTURA <> NULL ORDER by NUMEROFATTURA,NUMEROBOLLA"
FrmMENU.DB_BOLLE.RecordSource = Filtro$
FrmMENU.DB_BOLLE.Refresh

TreeView1.Nodes.Clear
skey = GetNextKey()
'iIndex = TreeView1.SelectedItem.Index
Dim INCREMENTO As Integer
INCREMENTO = 1
With DB_BOLLE.Recordset
.MoveLast
.MoveFirst
INCREMENTO = .RecordCount
If .RecordCount > 0 Then

M_Fattura1 = .NUMEROFATTURA
M_Fattura2 = .NUMEROFATTURA
Set Node = TreeView1.Nodes.Add(, , "Node " & DB_BOLLE.Recordset("ID").Value, DB_BOLLE.Recordset("NUMEROFATTURA").Value & " - " & DB_BOLLE.Recordset("NOMECLIENTE").Value)

Do Until .EOF
M_Fattura1 = .NUMEROFATTURA
If M_Fattura1 = M_Fattura2 Then

Set Node1 = TreeView1.Nodes.Add(Node, tvwChild, "Node1 " & DB_BOLLE.Recordset("ID").Value, DB_BOLLE.Recordset("NUMEROBOLLA").Value & " - " & DB_BOLLE.Recordset("NOME_PRODOTTO").Value)
Else
Set Node = TreeView1.Nodes.Add(, , "Node " & DB_BOLLE.Recordset("ID").Value, DB_BOLLE.Recordset("NUMEROFATTURA").Value & " - " & DB_BOLLE.Recordset("NOMECLIENTE").Value)
Set Node1 = TreeView1.Nodes.Add(Node, tvwChild, "Node1 " & DB_BOLLE.Recordset("ID").Value, DB_BOLLE.Recordset("NUMEROBOLLA").Value & " - " & DB_BOLLE.Recordset("NOME_PRODOTTO").Value)
End If
M_Fattura2 = M_Fattura1
TreeView1.Refresh
INCREMENTO = INCREMENTO - 1
Label10.Caption = "Mancano ancora " & INCREMENTO & " records"
Label10.Refresh
If INCREMENTO = 0 Then Exit Do
.MoveNext
Loop

End If

End With
Label10.Caption = "Finito!"
MousePointer = 0

il treeview viene popolato dalla query, ma ho il seguente problema:
quando la variabile INCREMENTO è = 0, ossia ho finito il popolamento, anzichè vedere "finito" nel label10, il pc mi si ferma per almento 5 minuti.
cosa sta succedendo?
maefe non è collegato   Rispondi citando
Vecchio 10-11-2007, 19.15.27   #11
LoryOne
Gold Member
WT Expert
 
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.503
LoryOne è un gioiello raroLoryOne è un gioiello raroLoryOne è un gioiello raro
"Mancano ancora " & INCREMENTO & " records"
Quanto vale INCREMENTO quando si blocca per 5 min ?
LoryOne non è collegato   Rispondi citando
Vecchio 11-11-2007, 14.39.57   #12
maefe
Senior Member
 
Registrato: 20-08-2002
Loc.: groppello d'adda
Messaggi: 414
maefe promette bene
la variabile INCREMENTO l'ho messa per vedere il pc che lavora e dare la sensazione che sta succedendo qualche cosa.
quando lo vedo a 0, ossia ' alla fine del recordset, dovrebbe uscire dal ciclo do until .eof e mostrarmi la label con "finito!|". invece questa appare dopo diversi minuti.
potrebbe essere un problema legato al treview? questa routine la uso in diversi altri casi (ma non con il controllo treeview) e funziona alla grande.
maefe non è collegato   Rispondi citando
Vecchio 11-11-2007, 14.53.14   #13
LoryOne
Gold Member
WT Expert
 
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.503
LoryOne è un gioiello raroLoryOne è un gioiello raroLoryOne è un gioiello raro
http://www.devx.com/vb/Article/9707
Questo articolo dovrebbe esserti uitle a comprendere come gestire il treeview.
LoryOne non è collegato   Rispondi citando
Vecchio 11-11-2007, 15.13.52   #14
LoryOne
Gold Member
WT Expert
 
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.503
LoryOne è un gioiello raroLoryOne è un gioiello raroLoryOne è un gioiello raro
Il treeview è il controllo VB più difficile da gestire in quanto è quello che consuma più memoria rispetto a tutti gli altri. Non bisognerebbe mai abusarne.
LoryOne non è collegato   Rispondi citando
Vecchio 11-11-2007, 15.25.47   #15
LoryOne
Gold Member
WT Expert
 
Registrato: 09-01-2002
Loc.: None of your business
Messaggi: 5.503
LoryOne è un gioiello raroLoryOne è un gioiello raroLoryOne è un gioiello raro
Quota:
Inviato da maefe
la variabile INCREMENTO l'ho messa per vedere il pc che lavora e dare la sensazione che sta succedendo qualche cosa.
Potresti inserire una barra di scorrimento.
il numero di record presenti nel recordset lo conosci.
L'incremento pure. Aggiungeresti un controllo, è vero, ma faresti a meno di una variabile inutile e daresti un tocco di profesisonalità al tuo software.
Ho notato anche che aggiungi refresh alla caption ed al controllo treeview.
E' inutile utilizzarla a meno che l'eleborazione sia così pesante da non consentire il refresh dei componenti.
Basta aggiungere un DoEvents affinchè il S.O. possa finire di elaborare i processi in sospeso.
LoryOne non è collegato   Rispondi citando
Rispondi


Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti)
 
Strumenti discussione

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is ON
Gli smilies sono ON
[IMG] è ON
Il codice HTML è OFF

Vai al forum

Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
Segnalazioni KB (Knowledge Base) Microsoft giancarlof Segnalazioni Web 71 12-07-2007 10.04.00
Problema query a campi incrociati ken87 Office suite 0 09-11-2006 19.46.40
Impossibile avviare SQL Server GiulioCesare Software applicativo 0 03-01-2005 23.28.52
Query SQL e Oracle Alhazred Programmazione 21 24-11-2004 15.08.06
Query in SQL simoner Programmazione 2 02-10-2003 15.01.50

Orario GMT +2. Ora sono le: 06.30.53.


E' vietata la riproduzione, anche solo in parte, di contenuti e grafica.
Copyright © 1999-2017 Edizioni Master S.p.A. p.iva: 02105820787 • Tutti i diritti sono riservati
L'editore NON si assume nessuna responsabilità dei contenuti pubblicati sul forum in quanto redatti direttamente dagli utenti.
Questi ultimi sono responsabili dei contenuti da loro riportati nelle discussioni del forum
Powered by vBulletin - 2010 Copyright © Jelsoft Enterprises Limited.