Je ne sais pas beaucoup sur l'exportation de données en utilisant OLEDB, je me suis dit ce qui suit:Droit chemin d'exporter plusieurs enregistrements à accéder à l'aide OLEDB
using (OleDbConnection conn = new OleDbConnection(connString))
{
try
{
conn.Open();
foreach (T t in rows)
{
using(OleDbCommand oleDbCommand = new OleDbCommand(insertString, conn))
{
OleDbParameter param = new OleDbParameter(.., ..);
oleDbCommand.Parameters.Add(param);
//add more parameters
oleDbCommand.ExecuteNonQuery();
}
}
}
catch (Exception e)
{
//handle
}
}
Au début, je n'ai pas utilisé l'instruction à l'aide pour la OleDbCommand (c'est-à-dire que je n'ai pas disposé de OleDbCommand). Mais dans ce cas, un fichier de verrouillage d'enregistrement est resté sur la base de données même si j'avais fini d'exporter. Avec l'instruction (interne) Using, l'exportation semble toutefois plus lente. Pourquoi? Et comment obtenir à la fois l'exportation rapide et la suppression du verrouillage d'enregistrement à la fin de l'exportation?
L'utilisation d'une transaction explicite rendra également l'exportation plus rapide? Ou cela me donnera-t-il seulement la possibilité de revenir en arrière? – willem
Une autre chose: je ne peux pas utiliser un constructeur OleDbCommand avec seulement une connexion en paramètre. – willem
Je viens de taper le code par coeur, donc effectivement, il est possible que la syntaxe ne soit pas entièrement correcte. –