Opérations du des données, DataTables ou Tableaux ?
Bonjour à tous :)
Je développe un programme en visual basic sous visual studio 2008.
Ce programme doit générer un rapport budgétaire à partir de données issues d'une BdD sous MSSQL d'une part et extraites de fichiers .txt d'autre part.
Pour l'instant, les données sont bien extraites de la BdD et rangées dans des DataTables tandis que celles issues des fichiers .txt sont stockées dans des tableaux.
Comme je ne suis pas très à l'aise avec les DataTables, j'ai commencé par remplir des tableaux avec les données des DataTables pour ne travailler que sur des tableaux par le suite. Cependant, remplir les tableaux prend beaucoup de temps de traitement ! :cry:
Ci-dessous le code utilisé pour remplir un des tableaux (le tableau "TableTaskMean")
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| Dim ListeSections2() As String = New String() {"Id", "IdTask", "IdMean", "DayNumber", "Quantity"}
Dim NbTaskMean
NbTaskMean = Menu_choix_chantier.TaskMeanTableAdapter.GetDataBy(ID_Site)
ReDim TableTaskMean(4, NbTaskMean - 1)
For i As Integer = 0 To NbTaskMean - 1
For j As Integer = 0 To 4
TableTaskMean(j, i) = Menu_choix_chantier.TaskMeanTableAdapter.GetDataBy(ID_Site).Rows(i)(ListeSections2(j))
Next j
Next i |
La requète SQL correspondant au GetDataBy :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| SELECT Id, IdTask, IdMean, DayNumber, Quantity
FROM dbo.TaskMean
WHERE IdTask IN
(
SELECT Id
FROM dbo.Task
WHERE IdActivity IN
(
SELECT Id
FROM dbo.Activity
WHERE IdSchedule=
(
SELECT Id
FROM dbo.Schedule
WHERE IdSite=@ID_Site AND ScheduleType=0
)
)
) |
Est-ce mon code qui fait que ça prend trop de temps ou est-ce normal et il ne faut travailler que sur des DataTables ?
Merci d'avance :ccool: