|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Jan 2008
Città: Paderno Dugnano
Messaggi: 116
|
Problema Trigger
Ciao a tutti!
Il mio problema é: esistono delle variabili array nei trigger? Mi spiego, nel trigger ho il risultato di una select che puo avere da 0 a n ennuple(formate da un solo attributo) e ogni riga risultante dovrei confrontarla con un parametro, una alla volta. Come faccio quindi a estrarre dal risultato della select uno ad uno le varie righe per poterle confrontare? L'ideale sarebbe un array... ma non so come fare! Grazie anticipatamente!
__________________
Intel Core Duo E8400 - Asus P5Q - Corsair XMS2 DHX CM2X2048-6400C4DHX- ATI Radeon HD 4850 - Samsung SyncMaster 206BW - Gigabyte GZ-X5 - Corsair 550VXEU - Microsoft Windows 7 Professional |
|
|
|
|
#2 |
|
Member
Iscritto dal: Jan 2008
Città: Paderno Dugnano
Messaggi: 116
|
mmm... e in mysql non c'è una soluzione?
nel caso avessi per esempio "select count(*) from citta" potrei mettere il risultato in una variabile dichiarata precedentemente, e quindi "select count(*) into n from citta" e poi utilizzare n per quel che mi serve; ma se la situazione è "select nome_citta from citta where regione='lombardia'" per esempio, avro come risultato + di una riga, e quindi come devo fare per selezionare ciclicamente ogni riga per poi utilizzarla?
__________________
Intel Core Duo E8400 - Asus P5Q - Corsair XMS2 DHX CM2X2048-6400C4DHX- ATI Radeon HD 4850 - Samsung SyncMaster 206BW - Gigabyte GZ-X5 - Corsair 550VXEU - Microsoft Windows 7 Professional |
|
|
|
|
#3 |
|
Member
Iscritto dal: Jan 2008
Città: Paderno Dugnano
Messaggi: 116
|
ok, grazie mille per il consiglio, provero a usarli
gia che ci sono sai dirmi se trovi errori in questo codice? mysql mi dà errori di sintassi ma non capisco dove sbaglio You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'declare n1 integer; select count(*) into n1 from giocatore where data_r' at line 6 Niente ho risolto, il problema è che a quanto pare non puoi dichiarare variabili all'interno degli IF, basta spostare tutte le dichiarazioni delle variabili prima degli IF
__________________
Intel Core Duo E8400 - Asus P5Q - Corsair XMS2 DHX CM2X2048-6400C4DHX- ATI Radeon HD 4850 - Samsung SyncMaster 206BW - Gigabyte GZ-X5 - Corsair 550VXEU - Microsoft Windows 7 Professional Ultima modifica di Gimmy2 : 28-03-2009 alle 14:38. Motivo: Problema Risolto |
|
|
|
|
#4 |
|
Member
Iscritto dal: Jan 2008
Città: Paderno Dugnano
Messaggi: 116
|
ho provato ad usarli, ma non c'è un modo per dichiarali separatamente e assegnarli successivamente alla select? perche nel mio caso la select è all'interno di un ciclo while e non posso dichiarare all'interno del while delle variabili altrimenti mi da errore, quindi non posso neanche dichiarare il cursore...
__________________
Intel Core Duo E8400 - Asus P5Q - Corsair XMS2 DHX CM2X2048-6400C4DHX- ATI Radeon HD 4850 - Samsung SyncMaster 206BW - Gigabyte GZ-X5 - Corsair 550VXEU - Microsoft Windows 7 Professional |
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Perche' non provi a spiegare/postare quello che hai fatto e quello di cui avresti bisogno?
Il piu' delle volte cio' che e' fatto con un cursore si puo' risolvere con un'istruzione unica, anche piu' efficientemente, e senza forse i problemi che stai incontrando.
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 10:18.


















