Bonjour a tous,
J'ai un probleme plutot etrange, j'ai une SP (gros curseur) qui fonctionne bien en employant le domaine name Microsoft.Practices.EnterpriseLibrary.Data mais pas avec le System.Data.SqlClient;
J'ai fait un test avec une SP qui n'utilise pas de curseur (simple INSERT) et qui parcontre marche bien.
Je n'ai aucun crash, juste le curseur qui devient 'read-only'.
Voici le code plutot trivial que j'utilise:
Faut-il ajouter qqch pour imposer un "Do Cursor" a mon ExecuteNonQuery()???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 string strSQL = ConfigurationManager.ConnectionStrings["MyCS"].ConnectionString.ToString(); SqlConnection sqlCon = new SqlConnection(strSQL); SqlCommand cmd = new SqlCommand(); cmd.Connection = sqlCon; cmd.CommandType = CommandType.StoredProcedure; cmd.CommandText = "SP_AvecGrosCurseur"; cmd.CommandTimeout = 90; cmd.Parameters.Clear(); cmd.Parameters.AddWithValue("@CampaignDate", DateTime.Now); ... sqlCon.Open(); cmd.ExecuteNonQuery(); sqlCon.Close();
Pour info, je souhaite reecrire cette partie du code en vue de l'utilisation d'un BeginExecuteNonQuery qui n'est pas disponible dans l'EnterpriseLibrary, car la query peut prendre 40/50 secondes pour s'executer.
La reecriture de la query n'est pas actuelle meme si elle utilise un curseur!
Merci de votre attention
Partager