Portail PHP

Forum de discussion et d'aide au php

Vous n'êtes pas identifié.

Annonce

Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides.
FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans.
Proposez vos news : si vous avez un evenement à annoncer
le chat : venez discuter de php.
 

#1 13-05-2005 05:49:12

Guest
Membre
Date d'inscription: 26-06-2004
Messages: 15
Site web

Probleme de requete suppression sous access

Bonjour a tous,

Je suis en stage en ce moment et je travail sur les bases de données access.
Voila, en gros j 'ai trois tables : TEntreprise, TClients et TProjets

LEs trois sont liés par des clés.

Je veux faire le tri ds la base de données alors pour cela je supprime certains projets selon certains criteres definis. Pour ca ya pa de pb.

Mais la ou ca se corse, c'est lorsque je veux supprimer les Clients qui n'ont pu de projets : C'est à dire que le N°Client ne figure plus dans la Table TProjets.

EN fait j'essayais ca :

Code:

DELETE *
FROM TClients
WHERE NOT EXISTS (SELECT *
FROM TProjets
WHERE  TClients.NClient = TProjets.NClient);

Mais ca marche pas. Le message affiché est : "La clé de recherche n'a été trouvée dans aucun enregistrement"
Bizare non?

Quelqu'un peut il m'eclaire la dessus, ce serait gentil parce que la je bloque depuis plusieurs jours et ca commance a m'enerver!!! grrrrrr

Merci d'avance.

Bonne journée

Hors ligne

 

#2 14-05-2005 04:45:33

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: Probleme de requete suppression sous access

et si tu supprime le * de ton DELETE ?
(c'est la syntaxe d'origine de delete. je ne sais pas si access en demande pas quand meme (microsoft sux sad )

Hors ligne

 

#3 01-06-2005 11:49:07

dis
Membre
Date d'inscription: 01-06-2005
Messages: 5

Re: Probleme de requete suppression sous access

J'ai le même problème avec une requête de suppression beaucoup plus simple (DELETE FROM Account WHERE FinancialYearID=xxx), mais en passant par VB et par une connexion ADO.
Le problème se produit que sur un poste particulier (l'application tournant sur au moins 5 postes dans deux pays, Suisse et France).
Impossible de trouver une réponse sur le web, seul ton message sur ce forum en fait le cas.
:?

P.S: Moi j'ai pas le *.

Hors ligne

 

#4 01-06-2005 12:11:51

kazhar
Ex-Webmaster
Lieu: Orléans
Date d'inscription: 25-06-2004
Messages: 3381
Site web

Re: Probleme de requete suppression sous access

si ca ne fonctionne pas que sur UN poste, c'est peut etre un probleme de version non ?

Hors ligne

 

#5 01-06-2005 12:48:49

dis
Membre
Date d'inscription: 01-06-2005
Messages: 5

Re: Probleme de requete suppression sous access

Tout à fait. La question serait alors quel couche logicielle est concernée. PHP utilise ODBC pour accéder à la base Access, moi c'est ADO.

Tous mes clients sont sur Windows XP, mais je ne sais pas si SP2 ou pas.
Alors, qu'est-ce qui embête ? - ADO, ODBC, Jet, la version linguistique d'un de ceux-cis, le SP2 ? - Pas évident.

En espérant que quelqu'un le découvre avant, je continues mes recherches occasionnelles et si je trouve je posterai mes résultats ici.

"Parturient Montes"  wink

Hors ligne

 

#6 01-06-2005 16:07:01

palmivore
Modérateur global
Lieu: 49 - Maine et Loire
Date d'inscription: 07-04-2005
Messages: 1783
Site web

Re: Probleme de requete suppression sous access

Perso (et je suis très bien placé pour parler su SP2  big_smile ) je doute que le SP2 y soit pour qqch. Les problmes que nous voyons ne concernent jamais ce genre de choses.

Enfin, si tu veux en être sûr désinstalle sP2, tu verras bien... c'est une des premières étapes de troubleshoot à faire quand tu mets en cause un SP?...

lol

Hors ligne

 

#7 01-06-2005 18:09:15

dis
Membre
Date d'inscription: 01-06-2005
Messages: 5

Re: Probleme de requete suppression sous access

Très judicieuse remarque.

Des premiers éléments concernant la machine victime me sont parvenus.
Y a bien un XP+SP2 (je sais pas si c'est une édition Pro ou Home), mais à vrai dire, c'est le cas de toutes les autres machines aussi, et elles ne posent pas de problèmes.
Office 2003 est aussi installé sur la machine.

D'autres vérifications sont en cours (patches Office appliqués, mises-à-jour du système post SP2 appliquées ou mancantes, etc...).

La suite bientôt.

Hors ligne

 

#8 02-06-2005 05:26:43

palmivore
Modérateur global
Lieu: 49 - Maine et Loire
Date d'inscription: 07-04-2005
Messages: 1783
Site web

Re: Probleme de requete suppression sous access

Question bête, tes machines sont client ou serveur ? Si elle sont client, il ne devrait pas y avoir d'impact... non ?

Hors ligne

 

#9 02-06-2005 06:03:00

dis
Membre
Date d'inscription: 01-06-2005
Messages: 5

Re: Probleme de requete suppression sous access

C'est encore plus simple, ce sont des postes autonomes.
Les bases Access sont locales (sur la machine même, sur chaque poste).

En fait, il y a un programme qui exporte et importe les données en passant par du XML (utilise MSXML3). C'est à l'importation que j'ai le problème sur un poste.

Le dénouement final
Le problème a disparu aujourd'hui. Aussi simplement et rapidement qu'il est apparu d'ailleurs.
L'utilisateur a simplement remplacé sa base par un backup et les données à importer sont passées comme une lettre à la poste et les imports-exports se passent bien désormais.

Malheureusement, je n'ai pas pu avoir une copie de sa base posant un problème et je n'ai pu reproduire le problème.

Je crois que c'est fichu pour savoir d'où ça pouvait venir, à moins qu'il se remanifeste. Tant pis... ou tant mieux, on verra!

Merci à tous.

P.S: juste pour l'historique, voici un petit extrait des journaux d'importation. Juste les messages d'erreurs en question:

Code:

...
2005-06-01,10:45:49,ER,-2147217887,XPortImportAccts,La clé de recherche n'a été trouvée dans aucun enregistrement.,
...
2005-06-01,11:04:29,EV,0,DELETEFINYEAR,Suppression des données et structures de l'exercice existant (#33),
2005-06-01,11:04:29,ER,16389,DeleteFinancialYear,Suppression des comptes¶16389: La clé de recherche n'a été trouvée dans aucun enregistrement.,
...

Hors ligne

 

#10 02-06-2005 08:32:32

palmivore
Modérateur global
Lieu: 49 - Maine et Loire
Date d'inscription: 07-04-2005
Messages: 1783
Site web

Re: Probleme de requete suppression sous access

oais.. la question c'est BDD corrompue ou Données non compatibles ? J'espère pour toi que c'est la première solution ;o)

Hors ligne

 

#11 02-06-2005 08:42:03

dis
Membre
Date d'inscription: 01-06-2005
Messages: 5

Re: Probleme de requete suppression sous access

Très bien vu.
C'est vrai que ça commence plus à sentir les données non compatibles roll .
En fait, pour me protégér de ce genre de problèmes, j'inscrit toujours ma version de la structure de la base de données dans la base elle-même; voici par exemple le script SQL de la dernière mise-à-jour (février 2005):

Code:

// V01.01.33 (Update)
// code societe
ALTER TABLE Company ADD COLUMN  CompanyCode VARCHAR(25);
INSERT INTO DBVersion(VersionNumber) VALUES ('01.01.33');

(Je fais tout par scripts SQL)
Mais comme j'ai pas la base de données en question, ben j'peux pas le vérifier. Bah !

Hors ligne

 

#12 29-06-2005 06:16:26

wagadooboo
Membre
Date d'inscription: 29-06-2005
Messages: 1

Re: Probleme de requete suppression sous access

J'ai p'tet la solution !!!
Car il m'est arrivé la même chose et rien faire jusqu'a ce que.............
Un champs de Type Mémo avec pour INDEX : OUI, AVEC DOUBLON.
J'ai bien sur mit ce champs sur INDEX : NON !
Et tout est rentré dans l'ordre !

WagaDobooo

Hors ligne