Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Suppression d'une ligne dans un Gridview [ Base de données / SQL Server ] (ric_ross)

mardi 4 décembre 2007 à 17:16:26 | Suppression d'une ligne dans un Gridview

ric_ross

Bonjour les Fondus !!!


En fait j'ai perdu plusieurs heures cet apres midi sur ce probleme qui me dépasse :

1_j'ai une SQLDataSource avec un simple select, je demande a l'assistant de générer les commandes Update et Supprimer.
2_je Bind un Gridview dessus
3_génération des colonnes automatiques, génération des boutons Supprimer et Modifier.


Code ASP :

[CODE]<asp:SqlDataSource ID="SqlDataSource2" runat="server" ConnectionString="<%$ ConnectionStrings:STSIMGConnectionString %>"
            DeleteCommand="DELETE FROM [indexrows] WHERE [idrid] = @idrid" InsertCommand="INSERT INTO [rows] ([idxid], [idrnum], [idrdata4], [idrdata3], [idrdata2], [idrdata1]) VALUES (@idxid, @idrnum, @idrdata4, @idrdata3, @idrdata2, @idrdata1)"
            SelectCommand="SELECT [idrid], [idxid], [idrnum], [idrdata4], [idrdata3], [idrdata2], [idrdata1] FROM [indexrows] WHERE ([idxid] = @idxid)"
            UpdateCommand="UPDATE [indexrows] SET [idxid] = @idxid, [idrnum] = @idrnum, [idrdata4] = @idrdata4, [idrdata3] = @idrdata3, [idrdata2] = @idrdata2, [idrdata1] = @idrdata1 WHERE [idrid] = @idrid">
            <DeleteParameters>
                <asp:Parameter Name="idrid" Type="Int32" ConvertEmptyStringToNull="False" DefaultValue="0" Direction="InputOutput" />
            </DeleteParameters>
            <UpdateParameters>
                <asp:Parameter Name="idxid" Type="Int32" />
                <asp:Parameter Name="idrnum" Type="Int32" />
                <asp:Parameter Name="idrdata4" Type="String" />
                <asp:Parameter Name="idrdata3" Type="String" />
                <asp:Parameter Name="idrdata2" Type="String" />
                <asp:Parameter Name="idrdata1" Type="String" />
                <asp:Parameter Name="idrid" Type="Int32" />
            </UpdateParameters>
            <InsertParameters>
                <asp:Parameter Name="idxid" Type="Int32" />
                <asp:Parameter Name="idrnum" Type="Int32" />
                <asp:Parameter Name="idrdata4" Type="String" />
                <asp:Parameter Name="idrdata3" Type="String" />
                <asp:Parameter Name="idrdata2" Type="String" />
                <asp:Parameter Name="idrdata1" Type="String" />
            </InsertParameters>
            <SelectParameters>
                <asp:Parameter DefaultValue="259072" Name="idxid" Type="Int32" />
            </SelectParameters>
        </asp:SqlDataSource>[/CODE]


Chacun l'aurra compris : le champ    idrid    est ma clé unique.


Alors voila : le UPDATE Fonctionne nikel, le SELECT aussi (meme si je joues un selectparameter pour remplacer le where fixe dans l'exemple).

MAIS : si j'ai le malheure de cliquer sur suppression :


[CODE]Erreur du serveur dans l'application '/WebSite2'.
--------------------------------------------------------------------------------

La variable scalaire "@idrid" doit être déclarée.

 

Trace de la pile:


[SqlException (0x80131904): La variable scalaire "@idrid" doit être déclarée.]
   System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +862234
   System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +739110
   System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +188
   System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +1956
   System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async) +192
   System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe) +380
   System.Data.SqlClient.SqlCommand.ExecuteNonQuery() +135
   System.Web.UI.WebControls.SqlDataSourceView.ExecuteDbCommand(DbCommand command, DataSourceOperation operation) +401
   System.Web.UI.WebControls.SqlDataSourceView.ExecuteDelete(IDictionary keys, IDictionary oldValues) +720
   System.Web.UI.DataSourceView.Delete(IDictionary keys, IDictionary oldValues, DataSourceViewOperationCallback callback) +75
   System.Web.UI.WebControls.GridView.HandleDelete(GridViewRow row, Int32 rowIndex) +927
   System.Web.UI.WebControls.GridView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +1155
   System.Web.UI.WebControls.GridView.RaisePostBackEvent(String eventArgument) +199
   System.Web.UI.WebControls.GridView.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +174
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102[/CODE]


je met la pile si ca aide quelqu'un moi, je sais pas quoi chercher dedans :(

Alors voila : je comprends plus rien, je peux pas toucher a la base de donnée (je developpe un addon sur un appli editeur donc pas touche !!!)

Sioux plé ^^


mercredi 5 décembre 2007 à 17:30:48 | Re : Suppression d'une ligne dans un Gridview

dona23

Salut,

t'as essayer d'ajouter l'id dans la propriété DataKeyName de ton GridView ?



Cette discussion est classé dans : web, system, gridview, ui, idrid


Répondre à ce message

Sujets en rapport avec ce message

Modifier le Gridview en visual studio 2005 (asp.net2) [ par hotlines ] bonjour , j'ai un petit problème avec le dabagrid , quand je veux modifier un enregistrement directement sur le Gridview il me m'affiche m'erreur suiv "Tentative non valide de FieldCount lorsque le lecteur est fermé" lors d'un DataBind() [ par benjiiim94 ] Bonjour, J'ai un problème lors de l'update d'informations provenant de ma base access. Une fois que j'execute la requete avec une command et que tout [asp][xsl] erreur incompréhensible [ par keliante ] bonjour à tous, dans ma page j'ai réalisé une transformation avec un xml et un xsl.Je n'avait jamais eu de problème mais ce matin avec des nouveaux x Erreur ASP.NET : Cannot use a leading .. to exit above the top directory. ??? Bizarre ??? [ par jolazoule ] Bonjour lorsque j'appelle ma page voici l'erreur que j'ai : Server Error in '/' Application. Cannot use a leading .. to exit above the top directo [vb.net][aspx]Pb d'insertion dans une BDD [ par harbonne ] curieuse_aspBonjour, J'ai crée une requête paramétrée pour insérer des données dans une table TERME de la base de donn&# "La valeur n'est pas comprise dans la plage attendue" [ par kallahan03 ] Bonjour,Souhaitant crypter la chaine de connection a la base Sql Server dans le fichier web.config, j'ai utilisé DPAPI. Voir exemple ici.La méthode et Problème "Échec du chargement de viewstate" [ par jeremaub ] Voilà mon souci: j'ai une page avec 2 textbox un bouton et un datagrid lorsque je clique sur le bouton j'execute une requete qui prend dans sa claus Control creer dynamiquement [ par alk ] Alors voila je declare un System.Web.UI.Controlsdans un fichier aspx.cs et je souhaite le voir apparaitre sur ma WebForms cependant je recois une erre Pb de datagrid->pour faire un panier ASP.net C# [ par fabrice83 ] fab83je suis en BTS est mon projet est de réaliser un site de vente g un pb avec mon panier .Voici mon code j'ai une datgrid1qui represente mon catal Fonction UPDATE sur une base Access [ par vince2472 ] Bonjour,Je rencontre un pb : j'ai le message 'Erreur de syntaxe dans l'instruction UPDATE' lorsque je mets ma base à jour (le but étant de la modifier


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 5,101 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.