begin process at 2012 02 11 07:38:38
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Divers

 > 

Aide et documentation

 > 

SQL erreur non spécifiée


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

SQL erreur non spécifiée

dimanche 20 mai 2007 à 08:18:27 | SQL erreur non spécifiée

gebu34

Bonjour à tous,
Je travaille avec D7, des tables ACCESS et des composants ADO. Jusque là pas de problème, mais avec une requête SQL, j'ai le message "Erreur non spécifiée". (déjà là ca part mal)
Voici la composition des tables pour compréhension.
Table1 : TB1champs1, TB1champs2, TB1champs3, TB1champs4
Table2 : TB2champs1, TB2champs2, TB2champs3
Table3 : TB3champs1, TB3champs2
Table4 : TB4champs1
Voici la requête que je passe en variable :

'SELECT * FROM (Table1 ' +
'INNER JOIN (Table2 INNER JOIN Table3 ON Table2.TB2champs2 = Table3.TB3champs1) ON Table1.TB1champs1 = Table2.TB2champs1) ' +
'INNER JOIN Table4 ON Table1.TB1champs2 = Table4.TB4champs1 ' +
'WHERE (Table3.TB3champs2 = 34 ) AND (Table1.TB1champs3 = "Stock") AND (Table1.TB1champs4 IS NOT NULL) ' +
'ORDER BY Table2.TB2champs3';

Si j'ouvre ACCESS et que j'applique cette requête, tout fonctionne.
Si je l'applique sous Delphi via ADO alors erreur.
Il faut savoir quand même que le SQL d'ACCESS est interprété.
Maintenant si je supprime l'INNER JOIN imbriqué :

'SELECT * FROM Table1 ' +
'INNER JOIN Table4 ON Table1.TB1champs2 = Table4.TB4champs1 ' +
'WHERE (Table3.TB3champs2 = 34 ) AND (Table1.TB1champs3 = "Stock") AND (Table1.TB1champs4 IS NOT NULL) ' +
'ORDER BY Table2.TB2champs3';

dans ce cas, tout fonctionne.
Je pense à une erreur de syntaxe....mais où ?
Bien évidemment j'ai fais le tour du net, j'ai trouvé des personnes qui avaient le même problème mais sans jamais de réponses...(sauf une qui indiquait que certaines versions de MySql ne gérait pas l'INNER JOIN, mais ce n'est pas mon cas.

Merci de votre aide
A+

dimanche 20 mai 2007 à 22:57:09 | Re : SQL erreur non spécifiée

cantador

Membre Club Administrateur CodeS-SourceS
Essaie Table3.TB3champs2 = "34" et aussi de récupérer le script SQL dans access et de le coller dans ADO; @Bientôt
lundi 21 mai 2007 à 06:31:15 | Re : SQL erreur non spécifiée

gebu34

Salut,
Le Table3.champs2 est un champs numérique entier, mettre les guillemets provoque une erreur.
La requête, comme elle est là, est celle qui sort directement du script d'ACCESS.
Sachant que le code SQL d'ACCESS est interprété, ce n'est peut-être pas forcémment comme ceci en SQL standard ou 92.....
A+
Merci


Cette discussion est classée dans : erreur, join, table2, table1, inner


Répondre à ce message

Sujets en rapport avec ce message

Copie de champs [ par jbob ] Bonjour à tous,je suis débutant et voici mon probleme J'ai 2 tables : table1 avec NOM,PRENOM,ADRESSE comme champs et table2 avec NOM et PRENOM comme c TTable: copier une table dans une autre [ par juan ] Bonjour tous, mon problème aujourd'hui, c'est que j'ai une table Table1 qui est filtrée, j'ai créé une deuxième table Table2 sans aucun enregistrement controle de redondance [ par thoubs ] Salut à tous, j'ai 2 tables Table1(maitre) et Table2(dépendante), un fiche pour la saisie dans les 2 tables. Comment controler la redondance dans Tabl SQL : déplacement de données de deux tables vers une autre [ par kmazri ] Salut J'au 3 table (table1, table2 et table3) Table1 : les champs suivent (référence,nom, Comment faire! Enregistrer Table1 et Table2 [ par 810mcu ] Bonjour a tous,Je suis en Delphi6 + Access2000<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office table paradox [ par impossibleok ] bjr; alors! mon probleme c'est que j'ai 2 table paradox (table1 & table2) et (index1 & index2) respectivement leurs index. par pur hasard! lors d'une Erreur du linker pendant l'émission des métadonnées [ par matthoffman ] Bonjour les gens! Bon alors voila je voudrais savoir a quoi correspond exactement cette fameuse erreur de compilation Delphi:"[DCC Erreur] E2328 Erreu Erreur sur les types de variables d'une fonction [ par Cyrian26 ] Bonjour, J'ai créé une fonction afin que je puisse convertir un caractère en binaire. Hélas je suis pas très callé dans les fonctions, mais j'arrive t problème chaîne vide [ par dugueclin ] Bonjour à tous,j'ai un problème lors d'un enregistrement  dans ma table1,si un édit est vide.exemple: (prénom.text), alors, j'ai un message d'erreur ( ADOdatabase [ par mouadloutar ] bonjourj'ai entrant d'etablir des etats au niveau d'un projet delphi , j'ai integrée ADOdatabase au niveau de FastReport mais sa marche pas .  msg err


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,577 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales