INSERT INTO matable1 (champ1, champ2) SELECT champ1, champ2 FROM matable2;
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question"INSERT INTO Prospect (ID_Prospect,Sujet,Civilite,Tel_1,Prenom,Tel_2,Nom,Fax,Email,CodeP,Ville,Pays,NomSCT,Fonction,Contact) SELECT ('ID_Pays','Id_Ville','5','" + TextBoxsujet.Text.ToString() + "','" + DropDownListcivilite.SelectedItem.ToString() + "','" + TextBoxtelephone.Text.ToString() + "','" + TextBoxprenom.Text.ToString() + "','" + TextBoxnum.Text.ToString() + "','" + TextBoxnom.Text.ToString() + "','" + TextBoxfax.Text.ToString() + "','" + TextBoxemail.Text.ToString() + "','" + TextBoxpostal.Text.ToString() + "','" + TextBoxNomS.Text.ToString() + "','" + TextBoxFonction.Text.ToString() + "','" + TextBoxContact.Text.ToString() + "') FROM Pays,Ville WHERE (( DropDownListpays.SelectedItem.ToString() = Pays.Libelle) AND (TextBoxville.Text=Ville.Libelle))";
si tu as plein de paramètres, utilises des SqlParameter
SELECT * FROM table WHERE Id = @MonId
maCommande.Parameters.Add(new SqlParameter("@MonId", monId));
SELECT * FROM matable WHERE id = xxx;
Salut
si tu as plein de paramètres, utilises des SqlParameter
Faisons encore plus simple :
Si tu as ne serait-ce qu'un seul paramètre, utilise des SqlParamter.
Les inconvénients :
- Euh... J'vois pas !
Les avantages :
- Code plus simple à lire
- Code plus simple à maintenir
- Tu peux dissocier ta requête et tes valeurs (et par exemple charger ta requête directement depuis un fichier .sql)
- Le jour où tu veux passer par des procédures stockées, la modif prend environ un quart de secondes
- Pas de risque d'injection SQL
- Pas de problème de format. Tu mets ta valeur, elle sera automatiquement encadrée par ' si nécessaire, tes dates seront au bon format...
Pour utiliser, tu remplaces tes valeurs par @UnNomArbitraire
Code :
SELECT * FROM table WHERE Id = @MonId
Ensuite, tu ajoutes le paramètre :
Code C# :
maCommande.Parameters.Add(new SqlParameter("@MonId", monId));
commande.Parameters.Add(new SqlParameter("@sujet",TextBoxsujet.Text )); commande.Parameters.Add(new SqlParameter("@Civilite",DropDownListcivilite.SelectedItem )); commande.Parameters.Add(new SqlParameter("@Nom",TextBoxnom.Text )); commande.Parameters.Add(new SqlParameter("@Prenom",TextBoxprenom.Text )); commande.Parameters.Add(new SqlParameter("@Tel_1",TextBoxtelephone.Text )); commande.Parameters.Add(new SqlParameter("@Tel_2",TextBoxnum.Text )); commande.Parameters.Add(new SqlParameter("@Fax",TextBoxfax.Text )); commande.Parameters.Add(new SqlParameter("@Email",TextBoxemail.Text )); commande.Parameters.Add(new SqlParameter("@Adresse",TextBoxrue.Text )); commande.Parameters.Add(new SqlParameter("@CodeP",TextBoxpostal.Text )); commande.Parameters.Add(new SqlParameter("@Ville",DropDownListVille.SelectedItem )); commande.Parameters.Add(new SqlParameter("@Pays",DropDownListpays.SelectedItem )); commande.Parameters.Add(new SqlParameter("@Source", DropDownListsource.SelectedItem)); commande.Parameters.Add(new SqlParameter("@Evaluation", DropDownListevaluation.SelectedItem)); commande.Parameters.Add(new SqlParameter("@NomSCT",TextBoxNomS.Text )); commande.Parameters.Add(new SqlParameter("@Fonction",TextBoxFonction.Text )); commande.Parameters.Add(new SqlParameter("@Contact", TextBoxContact.Text));