salut a tous,
voila je recois une erreur losque je veux effacer des rangers dans ma base de donnees.
en clair ce que je fais est remplir mon dataset avec les rangers que j'ai envie d'effacer.une fois les rangers chargees , je boucle pour les effecer avec la methode delete ensuite je fais un update avec le dataadapter voici mon code :
seulement je recois cette erreur je ne comprends pas pourquoi
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 void EraseTheEditedRow() { WeekLimite(); ds.ProjectTimeEntry.Clear(); // data adapter to retrieve data from time entry table string cmd = "select * from ProjectTimeEntry where (PrjID=@prjID AND EmpID=@empid AND TeName=@teName AND TeDate>=@back AND TeDate<=@forward)"; OleDbDataAdapter daTimeEntry = new OleDbDataAdapter(cmd,connection); OleDbCommandBuilder cb = new OleDbCommandBuilder(daTimeEntry); daTimeEntry.SelectCommand.Parameters.Add("@prjID",OleDbType.Integer); daTimeEntry.SelectCommand.Parameters.Add("@empid",OleDbType.Integer); daTimeEntry.SelectCommand.Parameters.Add("@teName",OleDbType.LongVarChar); daTimeEntry.SelectCommand.Parameters.Add("@back",OleDbType.Date); daTimeEntry.SelectCommand.Parameters.Add("@forward",OleDbType.Date); daTimeEntry.SelectCommand.Parameters["@prjID"].Value=_ProjectID; daTimeEntry.SelectCommand.Parameters["@empid"].Value=EmpID; daTimeEntry.SelectCommand.Parameters["@teName"].Value = _TeName; daTimeEntry.SelectCommand.Parameters["@back"].Value =backwardDate ; daTimeEntry.SelectCommand.Parameters["@forward"].Value =forwardDate ; daTimeEntry.Fill(ds.ProjectTimeEntry); foreach(myDataSet.ProjectTimeEntryRow TeRow in ds.ProjectTimeEntry.Rows) { TeRow.Delete(); } daTimeEntry.Update(ds.ProjectTimeEntry); ds.ProjectTimeEntry.AcceptChanges(); daTimeEntry.Dispose(); cb.Dispose(); }
quelqu'un a une idee pourquoi ca ne marche pas ou une autre idee pour effacer ces ranger
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Exception Details: System.InvalidOperationException: OleDbCommand.Prepare method requires all variable length parameters to have an explicitly set non-zero Size. Source Error: Line 732: Line 733: } Line 734: daTimeEntry.Update(ds.ProjectTimeEntry); Line 735: ds.ProjectTimeEntry.AcceptChanges(); Line 736: Source File: c:\inetpub\wwwroot\worksheetproject\projectformes\timeentry.aspx.cs Line: 734
merci a vous,
j'ai deja utlise le meme principe pour effece une ranger et je n'ai eu aucun probleme
Partager