OVH Cloud OVH Cloud

pb de requete

3 réponses
Avatar
Elise
Bonjour,

J'ai une table T_Commentaires et une table T_Phase qui=20
sont li=E9es entre elles par une relation de 1 =E0 l'infini.=20
Sachant qu'elles sont li=E9es par le champ IDPhase. celui-ci=20
est pr=E9sent dans chaque table.
Dans la table T_Commentaires,il y a un champ m=E9mo=20
Commentaires.
Je cr=E9e la requete suivante :
SELECT DISTINCT T_Phase.NumSchema,=20
T_Phase.NumPhase,T_Commentaires.IntitulePhase,=20
T_Phase.IDPhase, T_Commentaires.Commentaires" _
& " FROM T_Commentaires INNER JOIN T_Phase ON=20
T_Commentaires.IdenPhase =3D T_Phase.IDPhase" _
& " WHERE (((T_Phase.NumSchema)=3D'" & NumSchema=20
& "') AND ((T_Phase.NumPhase)=3D" & k & "))"

Quand j'execute la requete,il me sort bien le nombre=20
d'enregistrements voulus. Par contre, mon champ=20
Commentaires est tronqu=E9.

J'ai essay=E9 de mettre DISTINCTROW =E0 la place de DISTINCT=20
mais l=E0 j'ai trop d'enregistrements...

Comment je peux faire?

Merci d'avance
Elise

3 réponses

Avatar
Raymond
Bonjour.
Les champs de type Mémo sont tronqués dans toutes les requêtes qui réalisent
un tri explicite ou implicite sur le champ mémo (order by, group, union,
distinct) et le réduisent à 255 caractères. lire la page:
http://support.microsoft.com/default.aspx?scid=KB;EN-US;208926
Il n'y a pas de solution, à ma connaissance, et il ne faut pas trier le
champ Mémo.
essaie la même requête sans le distinct et tu verras que le champ mémo sera
complet
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.


"Elise" a écrit dans le message de
news:0d2801c39fb4$64ffc800$
Bonjour,

J'ai une table T_Commentaires et une table T_Phase qui
sont liées entre elles par une relation de 1 à l'infini.
Sachant qu'elles sont liées par le champ IDPhase. celui-ci
est présent dans chaque table.
Dans la table T_Commentaires,il y a un champ mémo
Commentaires.
Je crée la requete suivante :
SELECT DISTINCT T_Phase.NumSchema,
T_Phase.NumPhase,T_Commentaires.IntitulePhase,
T_Phase.IDPhase, T_Commentaires.Commentaires" _
& " FROM T_Commentaires INNER JOIN T_Phase ON
T_Commentaires.IdenPhase = T_Phase.IDPhase" _
& " WHERE (((T_Phase.NumSchema)='" & NumSchema
& "') AND ((T_Phase.NumPhase)=" & k & "))"

Quand j'execute la requete,il me sort bien le nombre
d'enregistrements voulus. Par contre, mon champ
Commentaires est tronqué.

J'ai essayé de mettre DISTINCTROW à la place de DISTINCT
mais là j'ai trop d'enregistrements...

Comment je peux faire?

Merci d'avance
Elise
Avatar
Elise
oui j'ai essayé et ça marche sauf qu'il me sort tous les
enregistrements et j'ai des commentaires en double...
comment je peux faire? je n'en veux qu'un seul...

-----Message d'origine-----
Bonjour.
Les champs de type Mémo sont tronqués dans toutes les
requêtes qui réalisent

un tri explicite ou implicite sur le champ mémo (order
by, group, union,

distinct) et le réduisent à 255 caractères. lire la page:
http://support.microsoft.com/default.aspx?scid=KB;EN-
US;208926

Il n'y a pas de solution, à ma connaissance, et il ne
faut pas trier le

champ Mémo.
essaie la même requête sans le distinct et tu verras que
le champ mémo sera

complet
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.


"Elise" a écrit
dans le message de

news:0d2801c39fb4$64ffc800$
Bonjour,

J'ai une table T_Commentaires et une table T_Phase qui
sont liées entre elles par une relation de 1 à l'infini.
Sachant qu'elles sont liées par le champ IDPhase. celui-ci
est présent dans chaque table.
Dans la table T_Commentaires,il y a un champ mémo
Commentaires.
Je crée la requete suivante :
SELECT DISTINCT T_Phase.NumSchema,
T_Phase.NumPhase,T_Commentaires.IntitulePhase,
T_Phase.IDPhase, T_Commentaires.Commentaires" _
& " FROM T_Commentaires INNER JOIN T_Phase ON
T_Commentaires.IdenPhase = T_Phase.IDPhase" _
& " WHERE (((T_Phase.NumSchema)='" & NumSchema
& "') AND ((T_Phase.NumPhase)=" & k & "))"

Quand j'execute la requete,il me sort bien le nombre
d'enregistrements voulus. Par contre, mon champ
Commentaires est tronqué.

J'ai essayé de mettre DISTINCTROW à la place de DISTINCT
mais là j'ai trop d'enregistrements...

Comment je peux faire?

Merci d'avance
Elise

.



Avatar
Raymond
Il faudrait essayer en deux temps, la première sans le mémo et la deuxième
(avec le mémo), basée sur la première requête et en relation avec la même
table pour récupérer le mémo.

pas très clair ? je ne suis pas sûr du résultat mais c'est gratuit pour
essayer.


--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.


"Elise" a écrit dans le message de
news:09dd01c39fb9$bd773c20$
oui j'ai essayé et ça marche sauf qu'il me sort tous les
enregistrements et j'ai des commentaires en double...
comment je peux faire? je n'en veux qu'un seul...