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

ASP.NET Discussion :

remplir une Bdd sql serveur a travers un formulaire Asp.net


Sujet :

ASP.NET

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2009
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 14
    Points : 13
    Points
    13
    Par défaut remplir une Bdd sql serveur a travers un formulaire Asp.net
    Salut a tous;

    j'ai crée une base de donnée avec sql server a travers Visual Studio 2005
    et un formulaire dans une page.aspx mais mon probelme est le suivant : quand je remplis ce formulaire rien n'est ajouté dans la table de la Bdd pourtant ya rien comme erreur affiché et voici le code de ma page :

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    using System;
    using System.Data;
    using System.Configuration;
    using System.Collections;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Web.UI.HtmlControls;
    using System.Data.Sql;
    using System.Data.SqlClient;
     
     
    public partial class contact : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
     
        }
        protected void Button1_Click(object sender, EventArgs e)
        { string no,pren,emai,desti,sujet,commen;
            int teleph;
            no=TextBox1.Text;
            pren=TextBox8.Text;
            emai=TextBox7.Text;
            teleph=Int32.Parse(TextBox5.Text);
            desti = DropDownList1.SelectedItem.Text;
            sujet=TextBox4.Text;
            commen=TextBox6.Text;
     
            SqlConnection Conn = new SqlConnection();
            Conn.ConnectionString ="Data Source= mead-012;"
                                                      + "Initial Catalog=maBdd.mdf;"
                                                      + "User ID=;"
                                                      + "Password=;";
     
     
            SqlCommand cmd=new SqlCommand();
            cmd.Connection =Conn;
            cmd.CommandType=CommandType.Text;
            cmd.CommandText="INSERT INTO T_comment(Nom,Prenom,Email,Telephone,Destination,Sujet,commentaire)";
            cmd.CommandText +="VALUES('"+no+"','"+pren+"','"+emai+"','"+teleph+"','"+desti+"','"+sujet+"','"+commen+"')";
     
            try
            {
                Conn.Open();
                cmd.ExecuteNonQuery();
                Conn.Close();
     
            }
            catch (Exception )
            {
                Response.Write("erreur" );
            }
     
        }
    }
    Pouvez vous m'indiquez ou est le problème ou bien me corrigez le code s'il ya des erreurs.

    Merci en toutes les cas de votre intention.

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    44
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 44
    Points : 50
    Points
    50
    Par défaut
    Il semble que ta requete est effectuée, mais pas commitée.
    Essaye avec une transaction :

    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
    18
     
     
    SqlConnection Conn = new SqlConnection();
            Conn.ConnectionString ="Data Source= mead-012;"
                                                      + "Initial Catalog=maBdd.mdf;"
                                                      + "User ID=;"
                                                      + "Password=;";
     
    SqlTransaction trans = Conn.BeginTransaction();
     
            SqlCommand cmd=new SqlCommand();
            cmd.Connection = Conn;
            cmd.Transaction = trans;
            cmd.CommandType=CommandType.Text;
            cmd.CommandText="INSERT INTO T_comment(Nom,Prenom,Email,Telephone,Destination,Sujet,commentaire)";
            cmd.CommandText +="VALUES('"+no+"','"+pren+"','"+emai+"','"+teleph+"','"+desti+"','"+sujet+"','"+commen+"')";
     
    trans.Commit();

  3. #3
    Expert éminent
    Avatar de Lyche
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2007
    Messages
    2 523
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 523
    Points : 6 775
    Points
    6 775
    Billets dans le blog
    4
    Par défaut
    Pourquoi ne pas passer par une procédure stockée? Tu transmet tes paramètres à la procédure et tu l'exécutes.

    Cordialement.

  4. #4
    Membre à l'essai
    Inscrit en
    Mai 2009
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 14
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par xamage Voir le message
    Il semble que ta requete est effectuée, mais pas commitée.
    Essaye avec une transaction :

    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
    18
     
     
    SqlConnection Conn = new SqlConnection();
            Conn.ConnectionString ="Data Source= mead-012;"
                                                      + "Initial Catalog=maBdd.mdf;"
                                                      + "User ID=;"
                                                      + "Password=;";
     
    SqlTransaction trans = Conn.BeginTransaction();
     
            SqlCommand cmd=new SqlCommand();
            cmd.Connection = Conn;
            cmd.Transaction = trans;
            cmd.CommandType=CommandType.Text;
            cmd.CommandText="INSERT INTO T_comment(Nom,Prenom,Email,Telephone,Destination,Sujet,commentaire)";
            cmd.CommandText +="VALUES('"+no+"','"+pren+"','"+emai+"','"+teleph+"','"+desti+"','"+sujet+"','"+commen+"')";
     
    trans.Commit();

    Merci Xamage de votre attention et de votre réponse mais j'ai essayé avec la transaction mais il m'affiche le message d'erreur suivant :"O

  5. #5
    Expert éminent sénior

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Points : 12 465
    Points
    12 465
    Par défaut
    Personnellement, je doutes que la transaction soit en cause...

    Par contre, il faudrait voir ce que ta requête a dans le ventre avant d'etre envoyee au serveur


    Bon, et comme je suis tres partial, je te conseillerais de passer a des requetes parmetrees, et, si tu veux gagner du temps, a un ORM (3615 subsonic )

  6. #6
    Membre à l'essai
    Inscrit en
    Mai 2009
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 14
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par mead_Developper Voir le message
    Merci Xamage de votre attention et de votre réponse mais j'ai essayé avec la transaction mais il m'affiche le message d'erreur suivant :"Operation invalide.la connexion est fermée.

  7. #7
    Expert éminent sénior

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Points : 12 465
    Points
    12 465
    Par défaut
    dans l'exemple de code de xamage, il manque un Conn.Open...et meme un executenonquery et compagnie

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Août 2008
    Messages
    44
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 44
    Points : 50
    Points
    50
    Par défaut
    dans l'exemple de code de xamage, il manque un Conn.Open...et meme un executenonquery et compagnie
    Oui il manque des choses, c'était surtout pour l'utilisation de la transaction

    Sinon, mead_Developper je t'invite à fouiller la MSDN (point de départ de toute recherche), en particulier là pour ton problème :
    http://msdn.microsoft.com/fr-fr/libr...on(VS.80).aspx

  9. #9
    Membre à l'essai
    Inscrit en
    Mai 2009
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 23
    Points : 13
    Points
    13
    Par défaut
    Conn.ConnectionString ="Data Source= mead-012;"
    "mead-012", qu'est ce que c'est?

    J'imagine que c'est le nom de ton instance SQL SERVER.

    il me semble qu'il doit êre précédé du nom de ton ordinateur.

    exemple : "Data Source= ORDINATEUR\\SQLEXPRESS"

  10. #10
    Membre à l'essai
    Inscrit en
    Octobre 2008
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 18
    Points : 20
    Points
    20
    Par défaut
    Bonjour,

    j'ai remarqué que ta chaine de connection fais référence à un fichier MDF t non un bas de donées, dans ce cas la tu devai remplacer :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "Initial Catalog=maBdd.mdf"
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    AttachDBFilename=|DataDirectory|aspnetdb.mdf;
    et tu devrait mettre le fichier MDF dans le repertoire "App_Data" de ton application Web.
    Cordialement.

Discussions similaires

  1. Composants gratuits pour connecter a une BDD SQL serveur
    Par zoheir13 dans le forum Bases de données
    Réponses: 3
    Dernier message: 25/01/2012, 11h52
  2. Réponses: 15
    Dernier message: 21/10/2009, 13h31
  3. [XML] Parser du XML pour remplir une BDD SQL
    Par LePueblo dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 08/10/2008, 12h44
  4. Se conncter a une BDD SQL SERVEUR
    Par Elodie30 dans le forum ASP.NET
    Réponses: 3
    Dernier message: 16/01/2008, 11h33
  5. Comment remplir une BD sql server à partir d'un formulaire?
    Par Je-cherche-pfe dans le forum Windows Forms
    Réponses: 1
    Dernier message: 01/09/2007, 16h09

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