 |
|  |
 |
Svarions |
| Ultimo Trigger Ospedale |
15-10-2007 14:11 |
|
 |
Svarions |
.amico.
Registered: Mar 2005
Posts: 34 (0.00 al dì)
Location: Caronno Pertusella (VA)
Corso: Comunicazione Digitale
Anno: 2
Time Online: 6:23:39 [...]
Status: Offline
Edit | Report | IP: Logged |
Ultimo Trigger Ospedale
Ciao a tutti, ho quasi finito la base di dati ma ho visto che a un certo punto nel testo compare:
"quando un medico raggiunge l’età pensionabile, i dati che lo riguardano vengono rimossi dalla base di dati ed ogni eventuale ruolo di responsabilità che egli ricopriva viene assegnato ad un successore (nel caso si conosca già) oppure reso disponibile per la successiva assegnazione ad altri medici; implementare la modifica descritta utilizzando le funzionalità messe a disposizione dal DBMS"
fare la function non è un problema ma come si fa a scrivere il trigger che deve farla eseguire, cioè quando viene controllato che il medico ha raggiunto l'età pensionabile?
Grazie
Simone
|
|
15-10-2007 14:11 |
|
|
|  |
 |
mikypiccolamiky |
| ciao ho problema con il login potresti aiutarmi? ... |
24-10-2007 17:32 |
|
 |
mikypiccolamiky |
.fedelissimo.
Registered: Jan 2007
Posts: 55 (0.01 al dì)
Location:
Corso:
Anno:
Time Online: 9:54:37 [...]
Status: Offline
Edit | Report | IP: Logged |
ciao ho problema con il login potresti aiutarmi?
Last edited by mikypiccolamiky on 24-10-2007 at 18:49
|
|
24-10-2007 17:32 |
|
|
|  |
 |
Voodoo |
| Re: Ultimo Trigger Ospedale |
01-11-2007 14:06 |
|
 |
Voodoo |
.grande:maestro.

Registered: Jan 2004
Posts: 1009 (0.13 al dì)
Location: Pisa
Corso: com. dig.
Anno: dottore :)
Time Online: 6 Days, 23:28:00: [...]
Status: Offline
Edit | Report | IP: Logged |
Re: Ultimo Trigger Ospedale
Originally posted by Svarions
Ciao a tutti, ho quasi finito la base di dati ma ho visto che a un certo punto nel testo compare:
"quando un medico raggiunge l’età pensionabile, i dati che lo riguardano vengono rimossi dalla base di dati ed ogni eventuale ruolo di responsabilità che egli ricopriva viene assegnato ad un successore (nel caso si conosca già) oppure reso disponibile per la successiva assegnazione ad altri medici; implementare la modifica descritta utilizzando le funzionalità messe a disposizione dal DBMS"
fare la function non è un problema ma come si fa a scrivere il trigger che deve farla eseguire, cioè quando viene controllato che il medico ha raggiunto l'età pensionabile?
Grazie
Simone
Ciao Svarione 
Io ho messo un campo in più nella tabella che gestisce il personale. Questo campo contiene un booleano che definisce semplicemente se un tipo è o no in pensione. Quando si modifica questo valore (ON UPDATE) richiamo la funzione del trigger.
Se hai altri dubbi su trigger fammi un fischio 
__________________
GET DROPBOX
# il grado di lentezza è direttamente proporzionale all'intensità della memoria;il grado di velocità è direttamente proporzionale all'intensità dell'oblio (Kundera) #
BLOG: Byte Strike
ChRiS 
|
|
01-11-2007 14:06 |
|
|
|  |
 |
Svarions |
| Non sono d'accordo Vodoo ;), il testo dice che lo ... |
01-11-2007 14:37 |
|
 |
Svarions |
.amico.
Registered: Mar 2005
Posts: 34 (0.00 al dì)
Location: Caronno Pertusella (VA)
Corso: Comunicazione Digitale
Anno: 2
Time Online: 6:23:39 [...]
Status: Offline
Edit | Report | IP: Logged |
Non sono d'accordo Vodoo , il testo dice che lo dovrebbe fare in automatico quando un tipo supera i 60 anni, per quello che riguarda la funzione del trigger non c'è problema a farla, il problema è quando attivarla...
La mia soluzione è stata la seguente: invece di creare una trigger function ho creato una function e basta che non prende argomenti quindi la richiamo ogni volta che qualcuno entra nella home del sito. Non è esattamente una soluzione precisa ma se si considera che il sito abbia almeno una visita da parte di qualcuno al giorno la soluzione funziona correttamente.
Se qualcuno ha avuto un'idea + brillante della mia si faccia avanti
|
|
01-11-2007 14:37 |
|
|
|  |
 |
Svarions |
| inoltre guardando + a fondo la tua soluzione si no ... |
01-11-2007 14:40 |
|
 |
Svarions |
.amico.
Registered: Mar 2005
Posts: 34 (0.00 al dì)
Location: Caronno Pertusella (VA)
Corso: Comunicazione Digitale
Anno: 2
Time Online: 6:23:39 [...]
Status: Offline
Edit | Report | IP: Logged |
inoltre guardando + a fondo la tua soluzione si nota anche che il campo boolean che metti non ha un grande senso inquando non può mai essere true perchè questo vorrebbe dire che il tipo è in pensione ma se questo è in pensione allora deve essere rimosso dalla base di dati... nn so se sono stato chiaro al massimo mandami una mail o chiamami che ne parliamo
Simone
|
|
01-11-2007 14:40 |
|
|
|  |
 |
Voodoo |
| [QUOTE][i]Originally posted by Svarions [/i]
... |
01-11-2007 17:49 |
|
 |
Voodoo |
.grande:maestro.

Registered: Jan 2004
Posts: 1009 (0.13 al dì)
Location: Pisa
Corso: com. dig.
Anno: dottore :)
Time Online: 6 Days, 23:28:00: [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by Svarions
inoltre guardando + a fondo la tua soluzione si nota anche che il campo boolean che metti non ha un grande senso inquando non può mai essere true perchè questo vorrebbe dire che il tipo è in pensione ma se questo è in pensione allora deve essere rimosso dalla base di dati... nn so se sono stato chiaro al massimo mandami una mail o chiamami che ne parliamo
Simone
Ovvio che nn può mai esser true,infatti quando viene messo a true il trigger si preoccupa di togliere il tipo dal database e quant'altro.
Come consiglio ti dico di fare quello che ti senti e ti viene meglio e di non farti scrupoli sull'interpretazione in quanto:
- il prof a malapena ti caga
- se ti caga ti chiede di mostrargli qualcosa e il perchè,ma niente di stratosferico
Ho fatto così anche perchè non sapevo come sviluppare una schedulazione di eventi,magari appoggiandomi alla data di nascita o quant'altro. Oppure non mi ricordavo il vincolo dei sessant'anni.
__________________
GET DROPBOX
# il grado di lentezza è direttamente proporzionale all'intensità della memoria;il grado di velocità è direttamente proporzionale all'intensità dell'oblio (Kundera) #
BLOG: Byte Strike
ChRiS 
|
|
01-11-2007 17:49 |
|
|
|  |
 |
Voodoo |
| [QUOTE][i]Originally posted by Svarions [/i]
... |
01-11-2007 18:07 |
|
 |
Voodoo |
.grande:maestro.

Registered: Jan 2004
Posts: 1009 (0.13 al dì)
Location: Pisa
Corso: com. dig.
Anno: dottore :)
Time Online: 6 Days, 23:28:00: [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by Svarions
La mia soluzione è stata la seguente: invece di creare una trigger function ho creato una function e basta che non prende argomenti quindi la richiamo ogni volta che qualcuno entra nella home del sito.
La tua soluzione non è male effettivamente anche se per un po' di anni viene chiamata una funzione che non farà niente 
In MySQL sembra esistere la schedulazione di eventi con una CREATE EVENT che andrebbe bene per questo caso,settando come lasso di tempo i 60 anni a partire dalla data di nascita del membro del personale e lo si setterebbe all'inserimento del personale nel database. Solo che una soluzione analoga in PG non lh' trovata,almeno con una ricerca veloce.
__________________
GET DROPBOX
# il grado di lentezza è direttamente proporzionale all'intensità della memoria;il grado di velocità è direttamente proporzionale all'intensità dell'oblio (Kundera) #
BLOG: Byte Strike
ChRiS 
|
|
01-11-2007 18:07 |
|
|
|  |
 |
Svarions |
| bhe certo la tua direi che è un'ottima soluzione, ... |
01-11-2007 22:13 |
|
 |
Svarions |
.amico.
Registered: Mar 2005
Posts: 34 (0.00 al dì)
Location: Caronno Pertusella (VA)
Corso: Comunicazione Digitale
Anno: 2
Time Online: 6:23:39 [...]
Status: Offline
Edit | Report | IP: Logged |
bhe certo la tua direi che è un'ottima soluzione, cmq bisogna pensare anche che far eseguire una funzione come quella da me proposta avrebbe una latenza inferiore a 0.1 secondo che direi che è una latenza gestibile. poi non so immagino che anche i db propongano qualcosa di meglio solo che io non ne ho la + pallida idea e a livello applicativo reale non ha un grande utilizzo inquanto uno si arrangia con qualcosa lato applicazione
Simone
|
|
01-11-2007 22:13 |
|
|
|  |
 |
| All times are GMT. The time now is 06:48. |
|
|
 |
|
 |
|
|
|  |
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is OFF
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|