begin process at 2012 05 27 20:47:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ASP.NET

 > 

Web 2.0

 > 

[C#][Web 2.0] Verification de la possibilité d'une suppression


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

[C#][Web 2.0] Verification de la possibilité d'une suppression

mercredi 17 mai 2006 à 10:28:50 | [C#][Web 2.0] Verification de la possibilité d'une suppression

cnguyen

Bonjour, voila j'ai un souci.
J'ai dans mon GridView un requête permettant de supprimer la ligne selectionné(dans mon cas un projet) (cela avec le SqlDataSource), je voudrais qu'avant cela, il verifie si le projet que je souhaite supprimer n'est pas utiliser dans une autre table, s'il n'est pas dans l'autre table il peux supprimer sinon il ne peux pas.

if (e.CommandName == "Delete") //ou la propriété rowDeleting

{

SqlConnection oConnection;

oConnection =

newSqlConnection();

String sConnectionString;

sConnectionString =

"Server=CHRISTOPHE\\SQLEXPRESS; Initial Catalog=ldap;Integrated Security = True;";

oConnection.ConnectionString = sConnectionString;

oConnection.Open();

SqlCommand oCommand;

SqlDataReader oDataReader;

String sSQL;

sSQL =

"SELECT COUNT(*) FROM cra WHERE projet = @projet";

oCommand =

newSqlCommand(sSQL, oConnection);

oDataReader.Read();

int num = oDataReader.GetInt32(0);

oDataReader.Close();

if (num != 0 )

{

Response.Write(

"<body><script>alert(\"" + " D,sol, mais nous ne pouvez supprimer ce projet! " + "\");</script></body>");

}

Dans la requete, dans le WHERE, je sais pas quoi mettre pour dire qu'il compte les lignes du projets qsue j'ai selectionné :s j'ai mis @projet mais bon...
Et sinon je sais pas comment faire pour lui dire que si c'est different de 0 il n'execute pas la requete!

Merci

mercredi 17 mai 2006 à 13:46:11 | Re : [C#][Web 2.0] Verification de la possibilité d'une suppression

jesusonline

Membre Club Administrateur CodeS-SourceS
Bonjour,

ne serait-ce pas plutot un problème de sql (www.sqlfr.com) ou alors j'ai rien compris au problème :)


Cyril - MVS - MCP
mercredi 17 mai 2006 à 16:09:52 | Re : [C#][Web 2.0] Verification de la possibilité d'une suppression

cnguyen

Bah je pense que c'est juste une commande a mettre pour dire au GridView de ne pas executer la suppression.
Ei sinon pour le @projet c'est jpas un probleme de requete qui ne marche pas mais plutot d'attribuer a @projet une valeur selectionnée
Enfin peut etre je me trompe :d
mercredi 17 mai 2006 à 16:12:59 | Re : [C#][Web 2.0] Verification de la possibilité d'une suppression

jesusonline

Membre Club Administrateur CodeS-SourceS
Oui, mais d'aprés le debut de ta question, tu vérifies au niveau de SQL, donc pourquoi ne pas le faire dans ta requete de suppression ?

sinon pour mettre un paramètre il faut faire :

cmd.commandType = StoredProcedure
cmd.parameters.add(new SqlParameters("@Project", value))


Cyril - MVS - MCP
mercredi 17 mai 2006 à 16:22:41 | Re : [C#][Web 2.0] Verification de la possibilité d'une suppression

cnguyen

Je vais voir mais j'ai cru que par exemple, pour ma requete de selection, il aurait suffit de faire sa :

sSQL = "SELECT COUNT(*) FROM cra WHERE projet ='" + projet_selectionne_du_gridview  + "'";

mercredi 17 mai 2006 à 17:20:54 | Re : [C#][Web 2.0] Verification de la possibilité d'une suppression

Nurgle

Membre Club Administrateur CodeS-SourceS
Salut,

Tu ne peux justement pas faire comme ça pour ta requête, à cause de problèmes d'injection SQL (cf cet excellent article), il est donc toujours préférable d'utiliser les objets SqlParameter comme cyril l'a montré...
...bien qu'il ai oublié les ; à la fin (d'anciennes habitudes du VB, cyril ? )



Nurgle (Antoine)
mercredi 17 mai 2006 à 17:34:35 | Re : [C#][Web 2.0] Verification de la possibilité d'une suppression

cnguyen

Comment sa??? Je dois avant sa mettre une valeur à @projet pour dire que @projet est le projet que je viens de selectionné...mais comment je fais....

?cmd?.commandType = StoredProcedure;
?cmd?.parameters.add(new SqlParameters("@projet", ?value?));

sSQL = "SELECT COUNT(*) FROM cra WHERE projet = @projet";

mercredi 17 mai 2006 à 17:48:17 | Re : [C#][Web 2.0] Verification de la possibilité d'une suppression

Nurgle

Membre Club Administrateur CodeS-SourceS
Comme tu es sans doute dans l'évènement RowDeleting, tu peux utiliser e.Values["Projet"] ou e.Keys["Projet"] (me souviens plus lequel...) pour récupérer le nom du champ "Projet" de la ligne en cours de suppression (si évidemment ton champ s'appelle "Projet"...)
et ensuite :

oCommand.Parameters.Add(new SqlParameter("@projet", leNomDuProjet));



Nurgle (Antoine)
mercredi 17 mai 2006 à 17:50:44 | Re : [C#][Web 2.0] Verification de la possibilité d'une suppression

cnguyen

Au faites, au niveau de la requete de suppression , tu veux que je mette sa sinon a la place de me casser la tete a faire un count sur la table CRA :

UPDATE    proact
SET              projet = @projet
FROM         proact CROSS JOIN
                      cra
WHERE     (proact.projet = @original_projet) AND (cra.projet IS NULL)
mercredi 17 mai 2006 à 18:11:00 | Re : [C#][Web 2.0] Verification de la possibilité d'une suppression

cnguyen

Réponse acceptée !
C'est bon, j'ai trouvé un moyen de faire sa!
J'ai simplement modifié ma requete suppression comme tu me l'avais indiqué...
Pourquoi j'y ai pas pensé avant à la place de toujours rechercher les solution les plus compliquées!!!!
Voici ce que j'ai fais pour ce qui souhaiterais faire la meme chose :

DELETE FROM proact
WHERE (projet = @original_projet)
AND projet not in (SELECT projet FROM cra)

1 2

Cette discussion est classée dans : projet, supprimer, oconnection, sconnectionstring, odatareader


Répondre à ce message

Sujets en rapport avec ce message

connexion vb.net à access [ par dina_info ] bonsoir a tous J ai un probleme de connexion a la base de donnée access en asp.net(vb) ,j arrive pas à inserer dans la base de donnée ,voila le code q [C#][VS2005] Comment obtenir une modification spécifique dans mon GridView ? [ par cnguyen ] Bonjour,Je voudrais savoir, lors de ma modification avec ma GridView, comment garder en parametre la valeur que l'on va modifié.Je m'explique, j'ai un Comment lier 2 DropDownList dans un GridView ? [ par cnguyen ] Bonjour,Lors de la modification de mon gridview, j'ai 2 champs qui s'affiche , le premier affichant dans une DropDownList une liste de projet, et le s Modification d'un GridView avec DropDownList [ par cnguyen ] Bonjour,Dans un gridView, lorsque je clique sur modifier, cela m'affiche dans 2 champs 2 DropDownList, la seconde etant dependate de la premiere. Pour [C#][VS2005] GridView avec DDL "vide" [ par cnguyen ] Bonjour,J'ai un souci, je creer un GridView en glissant ma table CRA sur ma page de creation.Donc il me creer un gridview avec comme champs :ID | USER Supprimer un répertoire avec ses sous répertoire [ par jeffwow ] Y a-t-il une façon de supprimer un répertoire ainsi que tout ce qu'il contient sans se faire prompter que le répertoire n'est pas vide?J'avais trouvé Supprimer un enregistremment avec dataview [ par toddy_101 ] salut, j'ai un petit probleme qui me rend un peu fou... si vous permettez de m'aider ca serait sympa :d bon, voila, je veux supprimer un enreistremen Visual studio 2003 m'affiche une erreur [ par newastre ] Bonjour Monsieur,   Je suis un jenue ingénieur débutant, mon problème avec Visual Studio 2003 depuis Un mois et démi malgré l'installation de plai Projet d'installaion [ par 24 ans ] Salut tout le mondej'ai reussit à realiser un projet d'installation pour mon application web mais le problème c'est que les fichiers sources ".aspx.cs [ASP.NET et VS2003] Problème d'ouverture de projet [ par malhivertman1 ] J'ai un projet fait sous Visual Studio 2003 placé dans C:\Inetpub\wwwroot\. Quand je l'ouvre, j'ai cette erreur qui apparait alors que mon fichier mss


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales