IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

Comment exécuter une procédure stockée dans SQL server en C#.net ?


Sujet :

MS SQL Server

  1. #1
    Futur Membre du Club
    Homme Profil pro
    JEE Software Engineer
    Inscrit en
    Avril 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : JEE Software Engineer

    Informations forums :
    Inscription : Avril 2006
    Messages : 4
    Points : 5
    Points
    5
    Par défaut Comment exécuter une procédure stockée dans SQL server en C#.net ?
    Bonjour à tous,
    J'ai créé une simple procédure stockée dans SQL server, nommée Transfert_Data qui fait la selection des données à partir d'un table et les inserer dans deux autres tables.
    Le problème est que je veux exécuter cette procédure à partir d'une application Web en ASP.net en cliquant sur un bouton pour l'exécuter en C#.net, comment faire ça en C#.net ?

    ci-dessous le code source que j'ai testé en C#.net puis la procédure stockée :


    protected void Button2_Click(object sender, EventArgs e)
    {
    SqlConnection con = new SqlConnection("Data Source=10.150.2.80;Initial Catalog=bde_m;User ID=sa;Password=");


    try
    {
    // ouvrir la connexion
    con.Open();
    SqlCommand com = new SqlCommand("Transfert_Data", con);
    com.CommandType = CommandType.StoredProcedure;
    com.CommandText = "Transfert_Data";

    com.ExecuteReader();//.ExecuteNonQuery(); ????
    con.Close();
    }

    catch
    {
    string scrip = "<SCRIPT language='javascript'>alert('Erreur!');</SCRIPT>";
    Page.RegisterStartupScript("", scrip);
    }
    }

    ------------------------------------------------------------------
    ---------------------- Procédure Stockée -------------------------
    ------------------------------------------------------------------


    set ANSI_NULLS ON
    set QUOTED_IDENTIFIER ON
    GO
    -- =============================================
    -- Author: <Author,,Name>
    -- Create date: <Create Date,,>
    -- Description: <Description,,>
    -- =============================================
    CREATE PROCEDURE [dbo].[Transfert_Data]
    -- Add the parameters for the stored procedure here

    AS
    BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;

    -- Insert statements for procedure here
    delete from imparag1
    delete from norm_cas

    INSERT INTO imparag1 (teil_nr,pm_kod,pm_ident,nem_popis,norm_cas)
    SELECT AGTENR, AGMANR, AGAGNR, AGAGBZ, AGSTZT FROM ARAG162
    order by AGTENR, AGMANR, AGAGNR

    INSERT INTO norm_cas (teil_nr,pm_kod,pm_ident,norm_cas)
    SELECT AGTENR, AGMANR, AGAGNR, AGSTZT FROM ARAG162
    order by AGTENR, AGMANR, AGAGNR

    INSERT INTO imp_stat (dat_imp, [text], flag, typ_imp)
    values(CURRENT_TIMESTAMP,'Update of data from XPPS was successfull', 'A', 'A')

    END

    Merci d'avance.

  2. #2
    Membre éprouvé
    Avatar de HULK
    Inscrit en
    Juillet 2003
    Messages
    1 274
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 274
    Points : 1 280
    Points
    1 280
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    try
    { 
    // ouvrir la connexion
    con.Open(); 
    SqlCommand com = new SqlCommand("Transfert_Data", con);
    com.CommandType = CommandType.StoredProcedure;
    com.ExecuteNonQuery();
    con.Close();
    }
     
    catch 
    {
    string scrip = "<SCRIPT language='javascript'>alert('Erreur!');</SCRIPT>";
    Page.RegisterStartupScript("", scrip);
    } 
    }
    j'suis vert !

  3. #3
    Futur Membre du Club
    Homme Profil pro
    JEE Software Engineer
    Inscrit en
    Avril 2006
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : JEE Software Engineer

    Informations forums :
    Inscription : Avril 2006
    Messages : 4
    Points : 5
    Points
    5
    Par défaut
    Merci HULK pr votre réponse, j'ai réssie de trouver l'erreur, c'est juste une petite commande qui manque avec une requêtte ExecuteNonQuery(); :

    "exec Transfert_Data" : SqlCommand com = new SqlCommand("exec Transfert_Data", con);

    voilà le code complet :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    try
    { 
    // ouvrir la connexion
    con.Open(); 
    SqlCommand com = new SqlCommand("exec Transfert_Data", con);
    com.CommandType = CommandType.StoredProcedure;
    com.ExecuteNonQuery();
    con.Close();
    }
     
    catch 
    {
    string scrip = "<SCRIPT language='javascript'>alert('Erreur!');</SCRIPT>";
    Page.RegisterStartupScript("", scrip);
    } 
    }
    Merci bcp

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Exécution d'une procédure stockée sous sql server 2000
    Par amirad dans le forum Développement
    Réponses: 2
    Dernier message: 27/04/2009, 09h50
  2. Réponses: 2
    Dernier message: 30/09/2008, 14h49
  3. Réponses: 0
    Dernier message: 30/09/2008, 01h14
  4. Réponses: 1
    Dernier message: 13/03/2008, 17h56
  5. Exécution d'une procédure stockée dans Sql
    Par Pascalp dans le forum Access
    Réponses: 4
    Dernier message: 01/09/2006, 11h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo