[Delphi][Oracle] Probleme de requete qui retourne seulement quelques champs

darkangelfr23 Messages postés 1 Date d'inscription samedi 3 avril 2004 Statut Membre Dernière intervention 21 septembre 2007 - 21 sept. 2007 à 14:57
sylvunix Messages postés 93 Date d'inscription mardi 11 avril 2006 Statut Membre Dernière intervention 4 mars 2009 - 21 sept. 2007 à 19:35
Bonjour (enfin re...)
Bon, avant tout, une petite question sur le forum: Est ce que c'est normal qu'il me demande de m'identifier a chaque clic que je fait? J'accepte pourtant les cookies...

Bref. voici mon soucis:
Je suis sur une application developpée en DELPHI (dont je ne connais pas grand chose, je parle du langage) et qui tapait sur une base de données Oracle.
Bon, le monsieur qui a fait l'appli est partit en retraite et, pour courronner le tout, en mauvais termes avec ma chef... resultat, on a AUCUN soutiens sur ce projet.
Bon,c a serait parfait s'ils n'avaient decidé de changer de base de données et donc aussi de tables.
Disons qu'avant je tapait sur la table X et maintenant, j'ai une table Y qui n'attends que mes petites requetes bien dodues pour s'amuser...
J'ai le code source de l'appli sur mon poste et j'ai donc mis dans mon TNSNAMES le truc qui dit :

<!-- BEGIN TEMPLATE: bbcode_code -->

Code :X.WORLD (DESCRIPTION
(ADDRESS (PROTOCOL TCP)(HOST = a.b.c )(PORT = z))
(CONNECT_DATA (SID ha1))
)

<!-- END TEMPLATE: bbcode_code -->Ce qui est en gras est rajouté pour moi par soucis de confidentialité et parce que sinon, je devrais tous vous tuer le soir dans votre sommeil!..

Bon, revenons au pb...
Le premier truc qui cloche, c'est que quand j'execute le code source tel quel (sans modifier la base de données sur laquel il tape, sachant qu'elle existe encore), ben il me sors une erreur SQL. Bon, on s'en fout du numero parce que je m'en souviens plus mais en gros, si je compile, que je met l'EXE sur le serveur, ben ca marche... Je pense que mon TNSNAMES n'est pas bien renseigné (ca, j'en doute) ou bien jai plusieurs TNSNAMES et j'ai pas renseigné le bon ou bien encore il doit y avoir un executable oracle qui doit tourner sur la machine et c'est pas le cas (elle a été réinstallée récemment)???
Je bite pas un mot de tout ces trucs oracliens...

Bref, si vous avez une idée (pas trop technique svp), elle sera bienvenue mais j'ai réussi a contourner cet etat de fait.

L'autre probleme, un peu plus chiant, celui la, c'est que quand je lance le programme compilé pour qu'il tape sur la nouvelle base avec les champs qui vont bien (et qui été testé avec SQL plus et qui me retourne exactement ce que je veux), ben il ne me retourne pas toutes les données...
S'il me retournait TOUT correctement, je serais content;
S'il me retournait RIEN, je me dirais que je suis une quiche
Mais là, disons qu'il me retourne les numeros de matricule des agent (non je ne fait pas parti des services secrets, juste de la ratp et c'est pas ce que j'ai fait de mieux visiblement...)mais pas leurs noms!!!
J'ai meme essayé la requete toute conne:

<!-- BEGIN TEMPLATE: bbcode_code -->

Code :
select s.nom from tata s

<!-- END TEMPLATE: bbcode_code -->et il me retourne rien!!! Alors là, je seche (bien que je ne fût pas mouillé, c'est un comble) et j'approche dangereusement de la date limite tel le coyote se dirige dangereusement vers le fond du canyon... (ouahhhh la culture générale!!!!).

Bon, desolé de ce long post mais je me sens moins seul de vous ecrire et pis j'essaye de prendre le rythme de boulot de la Régie et c'est pas evident!

A tres vite j'espere!

Darkangel

<!-- / message -->

1 réponse

sylvunix Messages postés 93 Date d'inscription mardi 11 avril 2006 Statut Membre Dernière intervention 4 mars 2009
21 sept. 2007 à 19:35
Salut !

Il faut commencer par le début ! Quelques petits trucs ...

Pour voir la liste des tables disponibles sur ta base :
SELECT TABLE_NAME FROM TABS;

Pour connaître la structure d'une table en particulier :
DESC MATABLE;

Pour connaître le nombre le lignes contenues dans cette table :
SELECT COUNT(1) FROM MATABLE;

En effet pour voir le contenu de cette table :
SELECT * FROM MATABLE;

Ensuite ton application doit certainement accéder à la base au travers d'ODBC, vérifies sur ta machine et dans les sources.

Je te renvoie la balle car je n'ai plus beaucoup d'éléments pour t'aider.

sylvunix
0
Rejoignez-nous