n° 219
Novembre 2017
Dicembre 13, 2017, 05:32:02 *
Benvenuto! Accedi o registrati.
Hai dimenticato l'e-mail di attivazione?

Accesso con nome utente, password e durata della sessione
Notizia:
 
   Indice   Linux Windows Techassistance Gameassistance videogame hardware Aiuto Ricerca Agenda Downloads Accedi Registrati  


* Messaggi recenti
Messaggi recenti
Pagine: [1]   Vai giù
  Stampa  
Autore Discussione: Un database di infermieri e pazienti?  (Letto 7929 volte)
0 utenti e 1 Utente non registrato stanno visualizzando questa discussione.
Gioce90
Newbie
*

Karma: +0/-2
Scollegato Scollegato

Messaggi: 17


Mostra profilo
« inserita:: Luglio 29, 2012, 11:52:23 »

sto costruendo un programma java che si servirà di un database mySql per registrare pazienti e infermieri. Non ho il tempo di approfondire lo studio dei db quindi mi chiedevo se le seguenti tabelle andavano bene

Infermiere:
ID | CF | Cognome | Nome | AutoMunito | GiornoLibero1 | GiornoLibero2 | Username | Password

Paziente:
ID | CF | Cognome | Nome | DataNascita | Città | Domicilio | NumeroCivico | Telefono(0...n) | CartellaClinica.

Le domande sono 4:
1. i giorni liberi (che contengono lunedì, martedì...) stanno bene così, o dovrei metterli in un'altra tabella? Ad esempio può capitare che un infermiere abbia solo un gg libero a settimana, un altro 2... Cosa mi consigliate?
2. c'è un modo specifico per proteggere le password?
3. Il numero di telefono del paziente può non esserci come possono essercene anche 10 diversi. Dovrei probabilmente metterli in un'altra tabella, mi dite come sistemare Paziente e l'eventuale tabella?
4. La cartella clinica dovrebbe essere un'altra diversa tabella contenente di volta in volta i vari Interventi subiti dal paziente, con attributi del tipo ID_Infermiere (che ha effettuato l'intervento), DataIntervento, TipoIntervento, MisuraRilevata, Note (opzionale). Come mi consigliate di farla?

Grazie a chi mi risponderà!
Registrato
DEV-01
Full Member
***

Karma: +11/-23
Scollegato Scollegato

Messaggi: 472

Me.Shift ^(n)


Mostra profilo E-mail
« Risposta #1 inserita:: Luglio 29, 2012, 12:07:20 »

No, non vanno bene perché non rispettano le forme normali che potrai trovare e leggere in massimo 6 minuti per cui fai molto prima tu che io (o un altro) a scriverti la soluzione.
Le nozioni che ne recepirai risponderanno a tutte le tue domande.

Due link brevi, coincisi e funzionali:
http://www.sezioneb.com/pages/informatica/5b/pdf/forme_normali_e_dipendenze.pdf
http://homepage.sns.it/lolli/dispense07/Cap4.pdf

Inoltre semmai avessi necessità/volontà di estrema comprensione quantomeno sulla teorie alla base del modello relazionale, puoi iniziare da qui:
http://www.dis.uniroma1.it/cadoli/didattica/metodi-formali-ing-sw/Dispense/cap04.pdf
http://wwwusers.di.uniroma1.it/~lpara/LOGICA/DISPENSE/dispense1.pdf
http://homes.di.unimi.it/~sel/scuola2006/insiemi.pdf

Per il resto trovi in giro ottimi manuali/portali anche free.
Registrato

01000100 01100101 01110110 00101101 00110000 00110001
Gioce90
Newbie
*

Karma: +0/-2
Scollegato Scollegato

Messaggi: 17


Mostra profilo
« Risposta #2 inserita:: Luglio 29, 2012, 12:30:30 »

grazie per le guide... mmm se ho ben capito diventerebbe:

Tabella Infermiere:
ID | CF | Cognome | Nome | AutoMunito | Username | Password

Tabella GiorniLiberiInfermiere:
ID | GiornoLibero

ad esempio

Tab Infermiere:
X1 | DRN... | Doronzo | Francesco | Si | drn1 | psw1
X2 | PZZ... | Piazzolla | Maria | No | pzz2 | psw2
...

Tab GiorniLiberiInfermiere:
X1 | Lunedì
X1 | Venerdì
X2 | Martedì

Penso sia corretto... o sbaglio?
Registrato
DEV-01
Full Member
***

Karma: +11/-23
Scollegato Scollegato

Messaggi: 472

Me.Shift ^(n)


Mostra profilo E-mail
« Risposta #3 inserita:: Luglio 29, 2012, 08:44:00 »

La gestione della turnistica "fissa" la devi elaborare tramite algoritmo a runtime indicando semplicemente la "squadra" alla quale l' operatore appartiene.
Questo snellisce il database e ti consente di tenere traccia delle eventuali modifiche tramite le timbrature.  

Altre modifiche (malattie, R.O.L., ferie, e congedi vari) vengono gestiti "manualmente" tramite client.

Il nome del giorno puoi ottenerlo tramite apposite funzioni da programma (ma mi pare che sia di scarsissima, se non nulla, rilevanza).

Consiglio: cerca di esemplificare la struttura del database e del programma: diverrà più performante e più facilmente manutenibile/scalabile/aggiornabile (le quattro proprietà più giustamente sbandierate ed efficaci di sempre).

Per quanto riguarda le altre tabelle il mio consiglio è quello seguire la logica almeno dei primi 3 predicati di normalizzazione (praticamente i più diffusi).

Ad esempio (tipico e funzionale):
tblPhoneType : | idPhoneType | Description|
                               1              casa
                               2              cellulare
                               3              ufficio
                               4              cell codificato
                               5              etc...

tblPhoneNumber: | idNumber |  idPhoneType | IdContact | PhoneNumber |

                          1                     2                 50          3334582xxx
                          2                     3                 126        04425931xxx
                          3                     1                 1012      0625963xxx
                          4                     1                 50          0256214xxx
etc.

Puoi inoltre aggiungere una tabella tblNote:

| idNote | idNumber |                              Note                                   |
    1             3          Chiamare dalle 09:00 alle 12:30 il lunedì ed il giovedì
    2             4          Non reperibile prima del 27/09/2012

Come vedi alcuni contatti mancano o le informazioni contenute nel campo "Note" non sono legate a tutti i numeri di un solo contatto ma possono essere diversificate: questo ti consente di eliminare la possibilità di avere campi vuoti nella tabella tblPhoneNumber tenendo il database più compatto ed aumentando le prestazioni delle query.

e così via per patologie, cartelle ed elementi di varia natura...





Registrato

01000100 01100101 01110110 00101101 00110000 00110001
Gioce90
Newbie
*

Karma: +0/-2
Scollegato Scollegato

Messaggi: 17


Mostra profilo
« Risposta #4 inserita:: Luglio 30, 2012, 05:42:08 »

Mi sei stato di grande aiuto, soprattutto per la gestione dei numeri di telefono.

La turnistica però non mi è ancora chiara, non saprei da dove cominciare xD
Registrato
DEV-01
Full Member
***

Karma: +11/-23
Scollegato Scollegato

Messaggi: 472

Me.Shift ^(n)


Mostra profilo E-mail
« Risposta #5 inserita:: Luglio 31, 2012, 06:42:47 »

Che linguaggio prevedi di utilizzare?


Registrato

01000100 01100101 01110110 00101101 00110000 00110001
Gioce90
Newbie
*

Karma: +0/-2
Scollegato Scollegato

Messaggi: 17


Mostra profilo
« Risposta #6 inserita:: Agosto 01, 2012, 02:40:07 »

java e mysql.
Sarà un progetto three-tier con tanto di DAO.
Registrato
DEV-01
Full Member
***

Karma: +11/-23
Scollegato Scollegato

Messaggi: 472

Me.Shift ^(n)


Mostra profilo E-mail
« Risposta #7 inserita:: Agosto 01, 2012, 09:49:44 »

Ok, allora per la parte di progettazione del database attieniti agli esempi fatti e ai link riportati, per la parte  relativa la programmazione purtroppo non posso aiutarti in relazione a java poiché non lo conosco quindi passo a chi ne sa più di me... sorry!!  Ghigno
Registrato

01000100 01100101 01110110 00101101 00110000 00110001
Gioce90
Newbie
*

Karma: +0/-2
Scollegato Scollegato

Messaggi: 17


Mostra profilo
« Risposta #8 inserita:: Agosto 22, 2012, 11:31:46 »

okay grazie Sorriso
Registrato
gibra
Newbie
*

Karma: +0/-0
Scollegato Scollegato

Messaggi: 24



Mostra profilo WWW
« Risposta #9 inserita:: Agosto 22, 2012, 04:59:15 »

java e mysql.
Sarà un progetto three-tier con tanto di DAO.

Immagino volessi scrivere ADO, non DAO!
Non userei DAO nemmeno se mi legassero  Ghigno
Registrato

bertolottipf
Full Member
***

Karma: +4/-7
Scollegato Scollegato

Messaggi: 443


Mostra profilo E-mail
« Risposta #10 inserita:: Agosto 23, 2012, 09:36:24 »

Data Access Object
Registrato
Gioce90
Newbie
*

Karma: +0/-2
Scollegato Scollegato

Messaggi: 17


Mostra profilo
« Risposta #11 inserita:: Agosto 24, 2012, 11:54:21 »

java e mysql.
Sarà un progetto three-tier con tanto di DAO.

Immagino volessi scrivere ADO, non DAO!
Non userei DAO nemmeno se mi legassero  Ghigno

Non ho capito Scioccato
Registrato
DEV-01
Full Member
***

Karma: +11/-23
Scollegato Scollegato

Messaggi: 472

Me.Shift ^(n)


Mostra profilo E-mail
« Risposta #12 inserita:: Agosto 24, 2012, 06:56:50 »

DAO è una tecnologia di acceso ai dati obsoleta (almeno da 8 anni) e sofferente di molteplici problemi e privazioni.
Cosa che ADO non è...

Registrato

01000100 01100101 01110110 00101101 00110000 00110001
Pagine: [1]   Vai su
  Stampa  
 
Vai a:  

Copyright © 2017 Edizioni Master SpA. p.iva : 02105820787

Tutti i diritti di proprietà letteraria e artistica riservati. - Privacy



powered by Simple Machines