Base de données

Résolu
Signaler
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010
-
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010
-
Bonjour, je veux recupérer des données dans deux tables différentes.Quand je faits la requete suivante j'ai une erreur de syntaxe ,merci de votre aide?:

Me.Dat_financeurs.DatabaseName = Bddsql_glob_rs "SELECT OET.[nom oet] AS Macrotâches where [ref reseau]" & glob_sressql_glob_rs sql_glob_rs & "select [Ref reseau] ,[Nom Financeur] as [Financeur(s)], [Part Financeur] as [Part en %] from financeur where [ref reseau]" & glob_sres
Me.Dat_financeurs.RecordSource = sql_glob_rs
Me.Dat_financeurs.Refresh
Me.Financeurs.MaxRows = Me.Dat_financeurs.Recordset.RecordCount

9 réponses

Messages postés
62
Date d'inscription
vendredi 7 novembre 2003
Statut
Membre
Dernière intervention
3 juillet 2009

Tu as oublié une "," au debut
glob_sres est un entier ou un string ?

si c'est un string tu devrais essayer comme ca :

Me.Dat_financeurs.DatabaseName = Bdd
sql_glob_rs = "SELECT OET.[nom oet] AS Macrotâches,"
sql_glob_rs
= sql_glob_rs & " financeur.[Ref reseau] ,financeur.[Nom Financeur]
as [Financeur(s)], financeur.[Part Financeur] as [Part en %] "sql_glob_rs sql_glob_rs & "FROM OET INNER JOIN financeur ON OET.[Ref reseau] financeur.[Ref reseau]='" & glob_sres &"'"
Me.Dat_financeurs.RecordSource = sql_glob_rs
Me.Dat_financeurs.Refresh
Me.Financeurs.MaxRows = Me.Dat_financeurs.Recordset.RecordCount
Messages postés
62
Date d'inscription
vendredi 7 novembre 2003
Statut
Membre
Dernière intervention
3 juillet 2009

Salut,

Dans cette requete, il te manque pas le FROM
sql_glob_rs "SELECT OET.[nom oet] AS Macrotâches where [ref reseau]" & glob_sres

Et sinon je pense qu'en faisant :
sql_glob_rs "SELECT OET.[nom oet] AS Macrotâches where [ref reseau] '" & glob_sres &"'"

Ca va peut etre fonctionner mieux
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

j'ai fait ça et c'est toujours pareil.Quand je fait le deogage il indique la ligne  que j'ai mise en rouge.

Me.Dat_financeurs.DatabaseName = Bddsql_glob_rs "SELECT OET.[nom oet] AS Macrotâches from oet where [ref reseau] '" & glob_sres & "'"sql_glob_rs sql_glob_rs & "select [Ref reseau] ,[Nom Financeur] as [Financeur(s)], [Part Financeur] as [Part en %] from financeur where [ref reseau]'" & glob_sres & "'"
Me.Dat_financeurs.RecordSource = sql_glob_rs
Me.Dat_financeurs.Refresh
Me.Financeurs.MaxRows = Me.Dat_financeurs.Recordset.RecordCount
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

Au fait quand je faits les requetes séparément ça marche mais quand je les concaténe ça marche plus.
Messages postés
62
Date d'inscription
vendredi 7 novembre 2003
Statut
Membre
Dernière intervention
3 juillet 2009

Pourquoi fais tu 2 select ???
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

Meme si j'enleve le 2éme "select" ça fait pareil.Pour etre plus précis par exemple j'ai deux tables table1 et table2 et je veux recupérer la donnée A1 de la table1  et la donnée B1 de la table2 .(A1 et B1 qui ont la meme référence par exemple).
Messages postés
62
Date d'inscription
vendredi 7 novembre 2003
Statut
Membre
Dernière intervention
3 juillet 2009

Alors tu devrais plutot faire une requete comme ca :

SELECT monchamp1, monchamp2, monchamp3
FROM matable1
INNER JOIN matable2 ON matable1.id = matable2.id
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

j'ai essayé d'adapter mais ça me met l'erreur suivante"dans l'instruction Select, un mot est réservé ou un argument est mal orthographié ou absent, ou une ponctuation est incorrecte".
J vais essayer de plus creser.
Pour infos  voici ce que j'ai fait:
 
Me.Dat_financeurs.DatabaseName = Bdd
sql_glob_rs = "SELECT OET.[nom oet] AS Macrotâches"
sql_glob_rs = sql_glob_rs & " financeur.[Ref reseau] ,financeur.[Nom Financeur] as [Financeur(s)], financeur.[Part Financeur] as [Part en %] "sql_glob_rs sql_glob_rs & "FROM OET INNER JOIN financeur ON OET.[Ref reseau] financeur.[Ref reseau]=" & glob_sres
Me.Dat_financeurs.RecordSource = sql_glob_rs
Me.Dat_financeurs.Refresh
Me.Financeurs.MaxRows = Me.Dat_financeurs.Recordset.RecordCount
Messages postés
623
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
15 juin 2010

Merci bien, ça marche nikel