Bonjour,

Alors voilà, je travaille avec une page asp dans laquelle j'ai une transaction qui fait un INSERT dans ma table. Jusque là tout va bien, après cette action, si j'interroge le contenu de ma base, j'ai bien ce que j'ai inseré. Dans mon INSERT, je ne remplie pas tous les champs car certains sont renseignés que dans la page suivante. Je fait donc un UPDATE dans la page suivante pour enregistrer les autres données. Seulement là, les données inserées avant sont en partie effacées. C'est à dire que il me reste ma clé primaire et ma clé secondaire mais que tout le reste est effacé. Les champs à mettre à jour sont bien enregistrés egalement mais tout le reste à disparu.

Je vous met mon code INSERT:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
insert = "NUMERO, REVISION"
valeur = "'" & request("numSB") & "', " & request("revSB")
titre = request("titre")
If titre <> "" Then
	insert = insert & ", TITRE"
	valeur = valeur & ", '" & titre & "'"
End If
revision = request("revision")
If revision <> "" Then
	insert = insert & ", DATE_PARUTION"
	valeur = valeur & ", '" & revision & "'"
End If
effectivite = request("effectivite")
If effectivite <> "" Then
	insert = insert & ", DATE_EFFECTIVITE"
	valeur = valeur & ", '" & effectivite & "'"
End If
reception = request("reception")
If reception <> "" Then
	insert = insert & ", DATE_RECEPTION"
	valeur = valeur & ", '" & reception & "'"
End If
If request("etops")="etops"	Then
	insert = insert & ", ETOPS"
	valeur = valeur & ", 'X'"
End If
If request("shop")="shop" Then
	insert = insert & ", ON_SHOP"
	valeur = valeur & ", 'X'"
End If
shopLabour = request("shopLabour")
shopLabour = replace(shopLabour, ",", ".")
If shopLabour <> "" Then
	insert = insert & ", SHOP_LABOUR"
	valeur = valeur & ", '" & shopLabour & "'"
End If
If request("wing")="wing" Then
	insert = insert & ", ON_WING"
	valeur = valeur & ", 'X'"
End If
wingLabour = request("wingLabour")
wingLabour = replace(wingLabour, ",", ".")
If wingLabour <> "" Then
	insert = insert & ", WING_LABOUR"
	valeur = valeur & ", '" & wingLabour & "'"
End If
refCred = request("refCred")
If refCred <> "" Then
	insert = insert & ", REF_CREDIT"
	valeur = valeur & ", '" & refCred & "'"
End If
dateCred = request("dateCred")
If dateCred <> "" Then	
	insert = insert & ", DATE_FIN_CREDIT"
	valeur = valeur & ", '" & dateCred & "'"
End If
compliance = request("compliance")
If description <> "" Then
	insert = insert & ", COMPLIANCE"
	valeur = valeur & ", '" & compliance & "'"
End If
description = request("description")
If description <> "" Then
	insert = insert & ", [DESCRIPTION]"
	valeur = valeur & ", '" & description & "'"
End If
avantage = request("avantage")
If avantage <> "" Then
	insert = insert & ", AVANTAGES"
	valeur = valeur & ", '" & avantage & "'"
End If
interchange = request("interchange")
If interchange <> "" Then
	insert = insert & ", INTERCHANGABILITEE"
	valeur = valeur & ", '" & interchange & "'"
End If
commentaire = request("commentaire")
If commentaire <> "" Then
	insert = insert & ", COMMENTAIRES"
	valeur = valeur & ", '" & commentaire & "'"
End If
If request("duree")="duree"	Then
	insert = insert & ", DUREE"
	valeur = valeur & ", 'X'"
End If
If request("performance")="performance" Then
	insert = insert & ", PERFORMANCE"
	valeur = valeur & ", 'X'"
End If
If request("fiabilite")="fiabilite" Then
	insert = insert & ", FIABILITE"
	valeur = valeur & ", 'X'"
End If
If request("inspection")="inspection" Then
	insert = insert & ", INSPECTION"
	valeur = valeur & ", 'X'"
End If
If request("autre")="A" OR request("autre")="I" OR request("autre")="AI" Then
	insert = insert & ", AUTRE"
	valeur = valeur & ", 'X'"
End If
insert = insert & ", ID_S_PROD"
valeur = valeur & "," & Sprod
Set RS = Server.CreateObject("ADODB.Recordset")
oConn.Execute("BEGIN TRANSACTION VALIDE_GEN_SB")
oConn.Execute("INSERT INTO SB (" & insert & ") VALUES(" & valeur & ")")
--du code pour faire d'autres insertions dans d'autres tables
oConn.Execute("COMMIT TRANSACTION VALIDE_GEN_SB")
et UPDATE:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
	oConn.Execute("UPDATE SB SET EFFECTIVITEE = '" & request("effectivitee") & "' WHERE ID_SB = " & SB)
Désolée le code est un peu long.

Je cherche donc à faire en sorte que mes données ne soient effacées lors de mon select sans avoir à faire un select avant l'insertion et re-inserer tout.

Si vous avez une explication à mon problème ou bien un commencement d'explication, ça m'aiderais beaucoup parce que mes recherches sur le net ne sont pas très fructueuses.

Merci d'avance pour votre aide.