Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio
Grazie ad un mocio rotante che viene costantemente bagnato e pulito, Narwal Flow assicura un completo e capillare lavaggio dei pavimenti di casa. La logica di intellignza artificiale integrata guida nella pulizia tra i diversi locali, sfruttando un motore di aspirazione molto potente e un sistema basculante per la spazzola molto efficace sui tappeti di casa
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi
Con un prezzo di 2.999 euro, il Panasonic Z95BEG entra nella fascia ultra-premium dei TV OLED: pannello Primary RGB Tandem, sistema di raffreddamento ThermalFlow, audio Technics integrato e funzioni gaming avanzate lo pongono come un punto di riferimento
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione
Abbiamo provato per diverse settimane il nuovo Magic V5 di HONOR, uno smartphone pieghevole che ci ha davvero stupito. Il device è il più sottile (solo 4.1mm) ma non gli manca praticamente nulla. Potenza garantita dallo Snapdragon 8 Elite, fotocamere di ottima qualità e batteria in silicio-carbonio che garantisce un'ottima autonomia. E il Prezzo? Vi diciamo tutto nella nostra recensione completa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-05-2006, 17:18   #1
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
[SQL] VINCOLI REFERENZIALI

Salve a tutti.
E' possibile associare un attributo di una tabella ad un attributo di piu tabelle???
Mi spiego meglio...
Mi trovo a dover progettare una base di dati per la gestione di un tribunale civile.
Ora ho creato cinque tabelle (civile,giudice,avvocato,perito e giuridica) ciascuna delle quali conterrà l'attributo chiave "codice" che sarà incrementato da un unico contatore...Successivamente ho creato la tabella "causa".Tra i vari attributi di "causa" vi è l'attributo "accusato"...
In teoria vorrei che questo attributo riferisca all'attributo "codice" o della tabella "civile" o della tabella "giudice" o della tabella "avvocato"...
Dato che non si sa a priori a che tabella esso possa riferire c'è un modo per collegarlo cmq a tutte e cinque le tabelle sapendo che tra le cinque tale "codice" si troverà in una tabella sola???
Grazie a tutti per eventuali risposte
__________________
Date un'occhiata al mio sito web personale!
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2006, 18:19   #2
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da mummolo
Salve a tutti.
E' possibile associare un attributo di una tabella ad un attributo di piu tabelle???
Mi spiego meglio...
Mi trovo a dover progettare una base di dati per la gestione di un tribunale civile.
Ora ho creato cinque tabelle (civile,giudice,avvocato,perito e giuridica) ciascuna delle quali conterrà l'attributo chiave "codice" che sarà incrementato da un unico contatore...Successivamente ho creato la tabella "causa".Tra i vari attributi di "causa" vi è l'attributo "accusato"...
In teoria vorrei che questo attributo riferisca all'attributo "codice" o della tabella "civile" o della tabella "giudice" o della tabella "avvocato"...
Dato che non si sa a priori a che tabella esso possa riferire c'è un modo per collegarlo cmq a tutte e cinque le tabelle sapendo che tra le cinque tale "codice" si troverà in una tabella sola???
Grazie a tutti per eventuali risposte

direi di no..

cmq anche se fosse, il disegno della base dati non sarebbe correttissimo...

in teoria dovresti creare la tabella causa, le varie tabelle giudice, giuria, avvocato, etc etc e poi fare delle tabelle di relazione, in cui associ un accusato a una causa e cosi via.
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2006, 20:52   #3
morskott
Member
 
Iscritto dal: Jul 2005
Messaggi: 291
se fai una tabella persona da cui le tabelle Giudice, Avvocato etc etc sono IS-A e poi metti una relazione tra causa e Persona?
Oppure fai una foreign key "artificiale", cioè il vincolo invece che implementato da SQL propio lo implementi con un Trigger che, per ogni tupla che inserisci, controlla se il valore "esterno" sia nell'unione delle altre tabelle

Ultima modifica di morskott : 22-05-2006 alle 20:54.
morskott è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2006, 22:06   #4
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
A quanto pare,il disegno della base sembra corretto...
Vi metto a disposizione lo schema logico (cliccare qui).
Questo problema nasce,secondo me,proprio perche è stata creata l'entità "persona" la quale viene generalizzata nelle varie sottoentità,quindi l'attributo "codice" nella ristrutturazione viene ereditato nelle varie sottoentità.
L'entità "causa" è collegata con delle relazioni con l'entità "persona",ma trattandosi di relazioni con cardinalità (1,1) esse vengono accorpate nella rispettiva entità e quindi ereditano l'attributo chiave...
Il problema è proprio questo!Nella ristrutturazione le relazioni "accusato" e "proponente" vanno a finire nell'entità "causa".Tali attributi dovranno per l'appunto riferire ad una persona (avvocato,giudice,civile... qualsiasi esso sia).
Sulla base dello schema fornito avete qualche suggerimento???
Grazie a tutti per aver risposto cosi tempestivamente!
__________________
Date un'occhiata al mio sito web personale!
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 22-05-2006, 22:10   #5
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
Quote:
Originariamente inviato da morskott
se fai una tabella persona da cui le tabelle Giudice, Avvocato etc etc sono IS-A e poi metti una relazione tra causa e Persona?
Oppure fai una foreign key "artificiale", cioè il vincolo invece che implementato da SQL propio lo implementi con un Trigger che, per ogni tupla che inserisci, controlla se il valore "esterno" sia nell'unione delle altre tabelle
Scusa prima cosa che cosa intendi per IS-A???
Il problema è che "accusato" e "proponente" cosi come "vincitore" e "perdente" sono attributi di "causa",quindi il problema sorge nel momento in cui creo la tabella "causa"!!Pure se creassi una trigger come giustamente tu mi dici,nel momento in cui creo la tabella "causa" come li dichiaro gli attributi sopra citati???
Dovranno far riferimento (chiave esterna) ad un particolare attributo???
Grazie ancora
__________________
Date un'occhiata al mio sito web personale!
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 23-05-2006, 08:12   #6
thebol
Senior Member
 
Iscritto dal: Dec 2000
Città: bologna
Messaggi: 1309
Quote:
Originariamente inviato da mummolo
A quanto pare,il disegno della base sembra corretto...
Vi metto a disposizione lo schema logico (cliccare qui).
Questo problema nasce,secondo me,proprio perche è stata creata l'entità "persona" la quale viene generalizzata nelle varie sottoentità,quindi l'attributo "codice" nella ristrutturazione viene ereditato nelle varie sottoentità.
L'entità "causa" è collegata con delle relazioni con l'entità "persona",ma trattandosi di relazioni con cardinalità (1,1) esse vengono accorpate nella rispettiva entità e quindi ereditano l'attributo chiave...
Il problema è proprio questo!Nella ristrutturazione le relazioni "accusato" e "proponente" vanno a finire nell'entità "causa".Tali attributi dovranno per l'appunto riferire ad una persona (avvocato,giudice,civile... qualsiasi esso sia).
Sulla base dello schema fornito avete qualche suggerimento???
Grazie a tutti per aver risposto cosi tempestivamente!
tabella persona con pk_persona(primary key di persona)
proponente con fk_persona(foreign key a persona) e pk_proponente
accusato con fk_persona(foreign key a persona) e pk_accusato
...
...
causa con pk_causa, e fk_proponente, fk_accusato etc etc

se ci possono essere piu proponenti/accusati per causa allora devi fare una tabella di relazione:

causa con pk_causa

accusatiInCausa fk_causa, fk_accusati
proponentiInCausa fk_causa, fk_proponenti

etc etc


Il trucco (apparte studiarsi la normalizzazione)è separare le entità.
Una persona è una persona.
Un accusato è un persona.
E' un accusato che partecipa alla causa, non una persona(potrebbe essere un azienda, al che dovresti introdurre l'entità giuridica, ma questa è un altra questione ).
Se piu accusati partecipano a una causa, devi creare una tabella di relazione molti a molti fra le 2 entità

Ultima modifica di thebol : 23-05-2006 alle 08:16.
thebol è offline   Rispondi citando il messaggio o parte di esso
Old 24-05-2006, 16:58   #7
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
Grazie a tutti ma il problema è risolto mediante l'ausilio dei trigger!!
Il problema era proprio che una "persona" veniva generalizzata in piu sottopersone (persona_giuridica,civile,avvocato,giudice,perito) e ciascuno di essi puo essere accusato o proponente!Semplicemente ho dovuto creare un trigger che controllasse,prima dell'inserimento,se il codice inserito in accusato/proponente fosse effettivamente presente all'interno di una delle cinque tabelle...
Cmq grazie a tutti per le risposte e per la tempestività nel rispondere
__________________
Date un'occhiata al mio sito web personale!
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 14-06-2006, 10:02   #8
gallo85
Senior Member
 
L'Avatar di gallo85
 
Iscritto dal: Dec 2003
Città: Bergamo
Messaggi: 3889
come è andato poi il progetto? ne dovrei fare uno anch'io
__________________
Ho trattato con un sacco di gente!!

DFI Lanparty nforce4 ultra-d / a64 4600+ x2 / 2*1gb samsung TCCC / ati x1950xtx
gallo85 è offline   Rispondi citando il messaggio o parte di esso
Old 14-06-2006, 10:09   #9
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
Bah diciamo bene...
Sono quasi agli sgoccioli!!
Vuoi che te lo faccia io il tuo progetto?!!!!
__________________
Date un'occhiata al mio sito web personale!
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 14-06-2006, 12:20   #10
gallo85
Senior Member
 
L'Avatar di gallo85
 
Iscritto dal: Dec 2003
Città: Bergamo
Messaggi: 3889
Quote:
Originariamente inviato da mummolo
Bah diciamo bene...
Sono quasi agli sgoccioli!!
Vuoi che te lo faccia io il tuo progetto?!!!!

guarda, io ho appena fatto l'esame e siccome il voto mi abbasserebbe la media e di fare l'orale non ho voglia nè tempo causa marea di altri esami avrei pensato appunto all'idea del progettino... tu sei capace? perchè quello che ha me manca è appunto solo il tempo il mio corso si chiama "sistemi informativi" e in pratica il progetto deve essere con access però con anche il modello concettuale e logico dietro (non so se siano obbligatori ma meglio farli per parare eventuali domande ) tu hai fatto le stesse mie cose per il tuo progetto del tribunale?
__________________
Ho trattato con un sacco di gente!!

DFI Lanparty nforce4 ultra-d / a64 4600+ x2 / 2*1gb samsung TCCC / ati x1950xtx

Ultima modifica di gallo85 : 14-06-2006 alle 12:22.
gallo85 è offline   Rispondi citando il messaggio o parte di esso
Old 14-06-2006, 15:32   #11
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
Si anche io ho fatto modello concettuale e modello logico...
Se vuoi appena finito ti passo la mia relazione e sulla base di quella svolgi il tuo.
Appena finito e consegnato posso anche dirti quanto mi è stato valutato!!
Ciao
__________________
Date un'occhiata al mio sito web personale!
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 14-06-2006, 15:41   #12
gallo85
Senior Member
 
L'Avatar di gallo85
 
Iscritto dal: Dec 2003
Città: Bergamo
Messaggi: 3889
Quote:
Originariamente inviato da mummolo
Si anche io ho fatto modello concettuale e modello logico...
Se vuoi appena finito ti passo la mia relazione e sulla base di quella svolgi il tuo.
Appena finito e consegnato posso anche dirti quanto mi è stato valutato!!
Ciao

perfetto, per quando lo devi consegnare? hai un contatto msn?

ma che uni fai? anno?
__________________
Ho trattato con un sacco di gente!!

DFI Lanparty nforce4 ultra-d / a64 4600+ x2 / 2*1gb samsung TCCC / ati x1950xtx
gallo85 è offline   Rispondi citando il messaggio o parte di esso
Old 14-06-2006, 18:54   #13
mummolo
Member
 
L'Avatar di mummolo
 
Iscritto dal: May 2005
Città: L'aquila
Messaggi: 182
Si utilizzo msn,trovi l'icona sotto il mio nome!Frequento informatica nell'università dell'aquila e sono al terzo anno.
Il progetto dovrei consegnarlo il 29 giugno.Qualche altro giorno per la valutazione e poi posso dartelo.
__________________
Date un'occhiata al mio sito web personale!
mummolo è offline   Rispondi citando il messaggio o parte di esso
Old 14-06-2006, 19:08   #14
gallo85
Senior Member
 
L'Avatar di gallo85
 
Iscritto dal: Dec 2003
Città: Bergamo
Messaggi: 3889
Quote:
Originariamente inviato da mummolo
Si utilizzo msn,trovi l'icona sotto il mio nome!Frequento informatica nell'università dell'aquila e sono al terzo anno.
Il progetto dovrei consegnarlo il 29 giugno.Qualche altro giorno per la valutazione e poi posso dartelo.
azz, è troppo tardi! a me servirebbe diciamo in una settimana ma è così complicato il tuo progetto? perchè allo schema concettuale non mi sembrava... ma perchè voi di informatica le fate al terzo anno queste cose e noi gestionali al secondo

forse perchè lo farete più approfondito, infatti io non so neanche cosa sia un trigger
__________________
Ho trattato con un sacco di gente!!

DFI Lanparty nforce4 ultra-d / a64 4600+ x2 / 2*1gb samsung TCCC / ati x1950xtx

Ultima modifica di gallo85 : 14-06-2006 alle 19:13.
gallo85 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Narwal Flow: con il mocio orizzontale lava i pavimenti al meglio Narwal Flow: con il mocio orizzontale lava i pav...
Panasonic 55Z95BEG cala gli assi: pannello Tandem e audio senza compromessi Panasonic 55Z95BEG cala gli assi: pannello Tande...
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione HONOR Magic V5: il pieghevole ultra sottile e co...
Recensione Google Pixel 10 Pro XL: uno zoom 100x assurdo sempre in tasca (e molto altro) Recensione Google Pixel 10 Pro XL: uno zoom 100x...
Lenovo IdeaPad Slim 3: un notebook Snapdragon X economico Lenovo IdeaPad Slim 3: un notebook Snapdragon X ...
GeForce NOW, tra pochi giorni arriva l'a...
Gli USA e la NASA non vogliono perdere l...
Il nuovo iPhone 17 Air ha già un clone A...
Una capsula SpaceX Dragon ha acceso i mo...
3 nuovissime offerte sottocosto pi&ugrav...
Robot aspirapolvere Roborock Q7 M5 a pre...
Offerte sui TV LG su Amazon: OLED evo e ...
Il Galaxy Z Fold 7 è un successo:...
Amazon abbatte i prezzi hardware: come p...
Eureka J15 Ultra imbarazza la concorrenz...
ChatGPT: il piano Free diventa più...
Il prossimo top di gamma di Vivo sarà il...
Sony mostra in anteprima la propria tecn...
Dreame A3 AWD: a IFA 2025 debutta il rob...
OpenAI, il chip proprietario per l'AI &e...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 03:08.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v