[asp.net ] déclencher une procédure stocké ?

Résolu
Bonjour,

je suis débutante en programmation, soyez cool...en plus j'utilise visual studio, beaucoup d'interface, pas beaucoup de code -;)

j'ai crée un procédure stocké "uspDeleteProduit" qui me sert à supprimer un produit sur base de son id (dans plusieurs tables simultanément)

problème : je n'arrive pas à comprendre comment je peux le faire fonctionner :
- j'ai essayé de mettre dans un formview une liste déroulante des id . Son Objet Data Source_ODS_ est sur la table des produits et sa popriété "selected" est "databindé" vers la propriété MyId de ma usp. Le FV à un ODS sur la procédure stockée.
J'ai aussi un bouton pour déclencher la usp mais comment exactement ? si je mets en commandeName "Insert", il ne trouve pas de méthode Insert (normal puisque ma usp ne sert qu'à delete...) mais si je mets "delete", ça plante pas mais il ne se passe rien non plus !

ma question : que mettre derrière ce fichu bouton pour déclencher la usp ??

merci !

Demain, le jamais d'aujourd'hui sera révolu !

Configuration: Dell Vostro 1700
Windows XP pro officiel
DD : 2x120 GB SATA
Processeur intel core 2 duo 7500 tpm
RAM 2 GB 
Firefox 2.0.0.11
Internet explorer 6
Configuration: Windows XP
Firefox 3.0.3

7 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour aux matinaux !!

    j'ai eu un peu d'aide en cours et ça m'a amené à ce code :

    [CODE]
    protected void BTsupp_Click(object sender, EventArgs e)
    {
    SqlConnection maConnexion = new SqlConnection("Data Source=.SQLEXPRESS;AttachDbFilename=DataConnections/categorieDB.mdf;Integrated Security=True;User Instance=True");
    maConnexion.Open();

    SqlCommand maCommande = new SqlCommand();
    maCommande.CommandText = "usp_deleteProduit";
    maCommande.CommandType = CommandType.StoredProcedure;
    maCommande.Parameters.AddWithValue("@MyId", DDLid.SelectedValue);

    maCommande.ExecuteNonQuery();
    maConnexion.Close();

    }
    [/CODE]

    mais quand j'exécute, on me renvoit cette erreur comme quoi il essaye de se connecter à SQL server....or je travaille avec sql express...

    Comment lui dire de se connecter à express ?

    merci
    1. Désolé ordiminnie, l'asp j'ai abandonné depuis des années.

      Ta signature me fait marrer : ton core2duo tourne à 7500 tpm ?
  2. oui je crois...
    c'est si surprenant ?

    je vais vérifier ça, que je dise pas de connerie !

    et tanpis pour l'asp, j'ai trouvé la solution (je la mettrai demain)
    1. euh ouais...je crois voir ce qui te fait marrer ! avec ma réponse, t'as carrément du péter une barre...c'est le DD qui tourne à 7500tpm et pas le processeur, hein?

      et dire que je me trimballe cette signature depuis presque un an.........
      1. merci cisco,
        ta réponse confirme ce que j'ai trouvé (pas toute seule, hein....), excepté pour la chaine de connexion

        voici ma solution :
        //on crée une connexion
        SqlConnection maConnexion = new SqlConnection();

        //on configure la connexionstring en allant chercher les paramètres dans le manager
        maConnexion.ConnectionString = ConfigurationManager.ConnectionStrings["categorieDBConnectionString"].ToString();

        //on crée une commande
        SqlCommand maCommande = new SqlCommand();

        //on lie maCommande à maConnexion
        maCommande.Connection = maConnexion;

        //on définit les propriétés de maCommande
        maCommande.CommandText = "usp_deleteProduit";
        maCommande.CommandType = CommandType.StoredProcedure;
        maCommande.Parameters.AddWithValue("@MyId", DDLid.SelectedValue);

        //on ouvre,on execute et on ferme
        maConnexion.Open();
        maCommande.ExecuteNonQuery();
        maConnexion.Close();
        1. allez...personne n'est disponible ? chui sure que doués comme vous l'êtes, ça va prendre deux minutes de m'aider...

          siouplé...

          non ? ben tanpis...j'aurais ma réponse en cours demain et je vous la transmettrai !

          bonne soirée
          1. public void Delete(int Id)
            {
            // Chaîne de connexion
            string sCnx = "Data Source=nomserveur;Initial Catalog=nombdd;User Id=nomuser;Password=motdepasse providerName=System.Data.SqlClient";

            // Création d'un objet connexion
            using (SqlConnection cnx = new SqlConnection(sCnx))
            {
            // Création d'une commande
            using (SqlCommand cmd = new SqlCommand())
            {
            cmd.CommandText = "usp_deleteProduit";
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.Parameters.Add(new SqlParameter("@MyId", SqlDbType.Integer));
            cmd.Parameters["@MyId"].Value = Id;
            cmd.Connection = cnx;

            //Ouverture de la connexion
            cnx.Open();

            //Exécution de la commande
            cmd.ExecuteNonQuery();

            }// end using cmd
            }// end using cnx
            }