Erelid |
|
Hi,
ik zit ben hier bezig met een koppeling tussen Dynamics CRM en een MySQL bron.
Ziet er ongeveer zo uit:
// Get all members that were modified since last update
MySqlCommand membersCommand = MySqlContext.CreateCommand();
membersCommand.CommandText = "SELECT xxxlid.id as xxxid, idnummer, naam, voornaam, email, telnr, faxnr, nationaliteit, gebdat, gebplaats, geslacht, straat, huisnummer, busnummer, postcode, gemeente FROM xxxlid LEFT OUTER JOIN adres ON xxxlid.`adres-id` = adres.id WHERE xxxlid.qmodify > @LatestUpdate";
membersCommand.Parameters.AddWithValue("@LatestUpdate", LatestUpdate);
// Get all members that were modified since last update MySqlCommand membersCommand = MySqlContext.CreateCommand(); membersCommand.CommandText = "SELECT xxxlid.id as xxxid, idnummer, naam, voornaam, email, telnr, faxnr, nationaliteit, gebdat, gebplaats, geslacht, straat, huisnummer, busnummer, postcode, gemeente FROM xxxlid LEFT OUTER JOIN adres ON xxxlid.`adres-id` = adres.id WHERE xxxlid.qmodify > @LatestUpdate"; membersCommand.Parameters.AddWithValue("@LatestUpdate", LatestUpdate);
(xxx is substituut wegens confidentieel).
Vervolgens wordt dat uitgelezen:
MySqlDataReader membersReader = membersCommand.ExecuteReader(System.Data.CommandBehavior.SequentialAccess);
while (membersReader.Read())
{
// En hier wordt dan een beetje data weg en weer geschoven van en naar Dynamics CRM - dit alles neemt wel een beetje tijd in
}
MySqlDataReader membersReader = membersCommand.ExecuteReader(System.Data.CommandBehavior.SequentialAccess); while (membersReader.Read()) { // En hier wordt dan een beetje data weg en weer geschoven van en naar Dynamics CRM - dit alles neemt wel een beetje tijd in }
Het probleem: als ik de query in Navicat gooi krijg ik ongeveer een 2000-tal rijen. De eerste run van deze code gaf mij 298 rijen. Een tweede run ergens in de 400, een derde run terug 298. Nochtans zijn de inputparameters in alle drie de gevallen exact hetzelfde en is de MySQL tabel ook niet gewijzigd tussenin.
Enige logische verklaring?
edit: opgelost > eerst alle data opgehaald en dan pas verwerkt naar CRM heeft het opgelost.. strange.
|