Base de données à plusieurs tables

java_Ado Messages postés 4 Date d'inscription samedi 28 avril 2007 Statut Membre Dernière intervention 24 mai 2007 - 30 avril 2007 à 22:32
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 - 30 avril 2007 à 23:37
Bonsoir !!!!
g une application  à realisé elle doit etre relier a une base de données constitué de  4 tables alors chaque clé primaire d une table est la clé etrangere de l autre table alors g pu realisé l ajout ! mais j arrive po a faire la modification et la suppression en sashant ke j utilise q une seule interface alors que chaque partie de données doivent s enregistrer a une table diferente !!
Voici le code ke g fait mais ça  n a pas marché (Ado .net ) :



Dim
n, o

As



Integer








Dim
p

As



Boolean
=

True






If
Modifier.Text =

"Modifier"



Then

NumeroActe.Focus()


Modifier.Text =




"Valider"






Dim
dt

As
DataTable = ds.Tables(

"ActMS"
)


For
n = 0

To
dt.Rows.Count - 1


If
NumeroActe.Text = dt.Rows(n)(0).ToString

Then

o = n







Exit



For






End



If






Next






If
p =

False



Then






Exit



Sub






End



If






Else






Try

dt.Rows(o).BeginEdit()


dt.Rows(o)(0) =




CInt
(NumeroActe.Text)dt.Rows(o)(1) =


CInt
(NumeroCF.Text)dt.Rows(o)(2) = Convert.ToDateTime(Dt_Acte.Text)


If
SupHA.Text =

""



Then

dt.Rows(o)(3) = 0







Else

dt.Rows(o)(3) =




CInt
(SupHA.Text)


End



If






If
SupA.Text =

""



Then

dt.Rows(o)(4) = 0







Else

dt.Rows(o)(4) = Convert.ToDateTime(SupA.Text)







End



If






If
SupCA.Text =

""



Then

dt.Rows(o)(5) = 0







Else

dt.Rows(o)(5) =




CInt
(SupCA.Text)


End



If

dt.Rows(o)(6) =




CInt
(Valeur_.Text)dt.Rows(o)(7) = ((dt.Rows(o)(3) * 10000) + (dt.Rows(o)(4) * 100) + dt.Rows(o)(5))

dt.Rows(o).EndEdit()


If
maj(da2,

"ActMS"
)

Then






Dim
dt1

As
DataTable = ds.Tables(

"Requisition"
)dt1.Rows(o).BeginEdit()


If
ReqHA.Text =

""



Then

dt1.Rows(o)(4) = 0







Else

dt1.Rows(o)(4) = Convert.ToInt32(ReqHA.Text)







End



If






If
ReqA.Text =

""



Then

dt1.Rows(o)(5) = 0







Else

dt1.Rows(o)(5) = Convert.ToInt32(ReqA.Text)







End



If






If
ReqCA.Text =

""



Then

dt1.Rows(o)(6) = 0







Else

dt1.Rows(o)(6) = Convert.ToInt32(ReqCA.Text)







End



If

dt1.Rows(o)(0) = Convert.ToInt32(NumReq.Text)


dt1.Rows(o)(1) = NumeroCF.Text.ToString


dt1.Rows(o)(2) = Convert.ToInt32(NumeroActe.Text)


dt1.Rows(o)(3) = Convert.ToDateTime(DateEnrolement.Text)


dt1.Rows(o)(7) = ((dt1.Rows(o)(4) * 10000) + (dt1.Rows(o)(5) * 100) + dt1.Rows(o)(6))


dt1.Rows(o).EndEdit()







If
maj(da4,

"Requisition"
)

Then






Dim
dt2

As
DataTable = ds.Tables(

"DepotAct"
)dt2.Rows(o).BeginEdit()

dt2.Rows(o)(1) = Convert.ToDateTime(Dt_Depot.Text)

dt2.Rows(o)(2) = Convert.ToInt32(NumeroActe.Text)

dt2.Rows(o)(3) =


CInt
(NumeroCF.Text)dt2.Rows(o).EndEdit()

maj(da3,


"DepotAct"
)


End



If






End



If






Catch
ex

As
ExceptionMsgBox(ex.Message)


End



Try







Que proposez vous ??

1 réponse

chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
30 avril 2007 à 23:37
Bonsoir,
Avant tout, regardes si tu as bien configuré
les propriétés de ta relation.
> Mettre à jour  à True
> Supprimer en cascade à True également
0
Rejoignez-nous