lebelge80
Messages postés22Date d'inscriptionmardi 10 août 2010StatutMembreDernière intervention 4 novembre 2016
-
Modifié par lebelge80 le 23/07/2016 à 11:36
lebelge80
Messages postés22Date d'inscriptionmardi 10 août 2010StatutMembreDernière intervention 4 novembre 2016
-
27 juil. 2016 à 03:38
Bonjour
j'ai besoin d'aide sur une requête SQL
J'ai moi aussi 2 tables :
- Table Personnel
- Table Pays
Le lien entre les 2 tables est personnel.usine = table_pays.PaysID (C'est un integer)
J'ai créer un formulaire qui permet de modifier le pays du personnel.
Ma requête, qui ne marche pas, est la suivante :
update Personnel set Personnel.usine = Table_Pays.PaysID
FROM Personnel INNER JOIN Table_Pays ON Personnel.Usine = Table_Pays.PaysID
WHERE Table_Pays.PaysID = ( SELECT Table_Pays.PaysID FROM Table_Pays WHERE Table_Pays.Pays = '" & CB_Choice_Plant.Text & "')
WHERE Personnel.ID_Personne = 1
CB_Choice_plant est ma combobox qui permet de sélectionner un pays existant dans ma table pays
Pourriez vous svp m'aider ?
En fait je pense que je m'emmele les pinceaux, et ma requête est n'importe quoi !!
D'avance merci
Bertr27
Messages postés50Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention26 juillet 2016 26 juil. 2016 à 10:11
Pour modifier le pays d'une personne :
UPDATE Personnel SET Personnel.usine = ( SELECT Table_Pays.PaysID FROM Table_Pays WHERE Table_Pays.Pays = '" & CB_Choice_Plant.Text & "') WHERE Personnel.ID_Personne = 'ID de la personne a modifier'
lebelge80
Messages postés22Date d'inscriptionmardi 10 août 2010StatutMembreDernière intervention 4 novembre 2016 26 juil. 2016 à 18:51
encore merci pour votre aide mais ça ne marche toujours pas. J'ai une erreur au niveau du SELECT. En fait je pense que le problème vient du langage utiliser. Peut etre trop évoluer pour SQL server compact 3.5 sous windows 7 32bits.
Je m'explique
J'ai utilisé Visual Studio 2010 pour créer ma base de donnée avec Microsoft SQL Server Compact 3.5 et peut être cette syntaxe n'est pas accepté. Est ce correct ?
Quand j'essaye de faire une requête UPDATE dans l'outil requête, il m'interdit d'utiliser une autre table. Et quand j'utilise un FROM dans un UPDATE, il me marque que ce n'est pas possible.
Ai-je tort ? Si vous avez une solution à mon problème je suis preneur
Vous n’avez pas trouvé la réponse que vous recherchez ?
Bertr27
Messages postés50Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention26 juillet 2016 26 juil. 2016 à 19:09
Et comme ça :
UPDATE Personnel SET usine = ( SELECT PaysID FROM Table_Pays WHERE Pays = '" & CB_Choice_Plant.Text & "') WHERE ID_Personne = 'ID de la personne a modifier'
?
lebelge80
Messages postés22Date d'inscriptionmardi 10 août 2010StatutMembreDernière intervention 4 novembre 2016 26 juil. 2016 à 19:42
Pareil. Problème au niveau du select. Je pense réellement que le problème vient de SQLCE
J'ai trouvé un moyen pour contourné mon problème mais j'avoue que c'est pas ce que j'espèrais. J'utilise 2 requête enchainé. Je sais c'est pas le top mais ça fonctionne.
Voici le code :
Private Sub Btn_Save_Click(sender As System.Object, e As System.EventArgs) Handles Btn_Save.Click
Dim Pays as String
Try
' Commande SQL pour Prendre l'ID du pays
Req_sql_string = "Select Table_Pays.PaysID " & _
" FROM Table_Pays " & _
" WHERE Table_Pays.Pays = '" & CB_Choice_Plant.Text & "'"
Bertr27
Messages postés50Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention26 juillet 2016 26 juil. 2016 à 20:32
Après réflexion :
UPDATE Personnel
SET Personnel.usine = P.PaysID
FROM ( SELECT PaysID FROM Table_Pays WHERE Pays = '" & CB_Choice_Plant.Text & "') P
WHERE Personnel.ID_Personne = 'ID de la personne a modifier'
Normalement c'est bon pour SQLCE
lebelge80
Messages postés22Date d'inscriptionmardi 10 août 2010StatutMembreDernière intervention 4 novembre 2016 27 juil. 2016 à 03:38