Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Gestione Relazioni db
giovedì 12 ottobre 2006 - 14.54
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Axel2006
Profilo
| Newbie
8
messaggi | Data Invio:
gio 12 ott 2006 - 14:54
Salve a tutti,
sò bene che la domanda che stò per fare è da vero Newbie ma abbiate pazienza. Premetto che sono un ex "programmatore" autodidatta di VB6 e da circa un anno mi sono messo a lavorare un pò con .net, il mio problema è nelluso di tabelle relazionate. Per quanto rigurada la visualizzazione è banale, basta scegliere le due o più tabelle che si desidera visualizzare e creare le relazioni e tutto funziona egregiamente, il problema invece insorge quando si fanno dei salvataggi. Nei libri a mia disposizione questo problema viene sempre risolto creando comandi sql per il salvataggio e l'aggiornamento dei dati ma questa soluzione mi appare alquanto rognosa, immaginiamo di avere 20 - 30 tabelle il doverle aggiornare con i vari INSERT o UPDATE e DELETE mi sembra un lavoro immenso. Ho notato però che nella gestione delle relazioni tramite il la finestra di progettazione del dataset le relazioni permettano tre tipi fondamentali di impostazione solo vincolo o solo relazione e relazione e vincolo. E' chiaro che se si vogliono modificare tutti i record delle due o più tabelle si deve scegliere solo vincolo o relazione e vincolo ma nonostante le molteplici prove il risultato è sempre deludente in alcuni casi vengono violate le relazioni di vincolo in altri ho problemi di integrità. Stò sbagliando qualche cosa ma la mia domanda è cosa? Oppure non ho capito niente? Di seguito posto il codice che userei per fare l'operazione di salvataggio e per creare un nuovo record
Private Sub BtnNuovo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnNuovo.Click
Me.AnagraficaPersonaleBindingSource.CancelEdit()
Me.IndirizzoPersonaleBindingSource.CancelEdit()
Me.AnagraficaPersonaleBindingSource.AddNew()
Me.IndirizzoPersonaleBindingSource.AddNew()
FlagNew = True
End Sub
Private Sub BtnSalva_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSalva.Click
Me.AnagraficaPersonaleBindingSource.EndEdit()
Me.AnagraficaPersonaleTableAdapter.Update(Me.DSAnagrafiche.AnagraficaPersonale)
Dim ID As Int32 = Me.AnagraficaPersonaleTableAdapter.MaxID.Value
Me.IndirizzoIDPers.EditValue = ID
Me.IndirizzoPersonaleBindingSource.EndEdit()
Me.IndirizzoPersonaleTableAdapter.Update(Me.DSAnagrafiche.IndirizzoPersonale)
End If
End Sub
Ad intuito direi che se una tabella è relazionata dovrebbe essere sufficiente inserire una nuova riga sulla tabella padre e per cascata si dovrebbero avere una riga nuova su ogni tabella figlia in realta non è così, lo stesso dovrebbe valere per il salvataggio o l'eliminazione ma ahime! non funziona mi potreste dare indicazioni articoli, consigli senza dirmi che è meglio che mi dò ai fiori lo sò da me ....
Grazie Francesco
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !