Rechercher : dans
Par :

Urgent-parcourir une chaine de caractère

Dernière réponse le 22 mai 2004 à 23:56:31 soussou, le 16 mai 2003 à 15:26:39 
 Signaler ce message aux modérateurs

Salut ts le monde,
j'arrive pas à résoudre ce pb :
j'ai cette chaine de car par exple :
select * from t1,t2,t3
et je veux parcourir cette chaine et récupérer après t1 t2 et t3
comment il faut faire svp?!

Meilleures réponses pour « urgent parcourir une chaine de caractère » dans :
[Shell] Tester une variable numérique VoirTester une variable numérique    Préambule Dans un environnement "shell", les variables sont, par défaut, de type "chaîne de caractères". De ce fait il n'est pas possible de déclarer une variable de type "entier" (enfin, ceci n'est pas tout à...
Les chaînes de caractères en C++ VoirQu'est-ce qu'une chaîne de caractères ? Une chaîne de caractères (appelée string en anglais) est une suite de caractères, c'est-à-dire un ensemble de symboles faisant partie du jeu de caractères, défini par le code ASCII. En langage C++, une...
VBScript - Les fonctions de chaînes de caractères VoirLes fonctions de chaînes de caractères Fonction Description Filter(InputStrings, Value[, Include[, Compare]]) Sélectionne des chaînes de caractères parmi un tableau de chaînes...
Langage C - Les chaînes de caractères VoirQu'est-ce qu'une chaîne de caractères ? Une chaîne de caractères (appelée string en anglais) est une suite de caractères, c'est-à-dire un ensemble de symboles faisant partie du jeu de caractères, défini par le code ASCII. En langage C, une chaîne...

1

Pitu, le 16 mai 2003 à 15:28:55

Bonjour Soussou.

De quel(s) outil(s) disposes-tu ?
Tu veux faire ça en quel langage ?

 
   (:•Þ  Pitu

Répondre à Pitu

3

soussou, le 16 mai 2003 à 16:09:39

En fait j'utilise sql dans des procédures stockées et je sais que dans les procédures stockées, on peut utiliser le langage c, alors je voulais savoir comment on fait

Répondre à soussou

2

sebsauvage, le 16 mai 2003 à 15:39:12

Ben déjà là tu nous fait un beau produit cartésien, de quoi mettre ton serveur SQL à genous.

Comme dit Pitu, dans quel langage programmes-tu ?

t1 t2 et t3, ce sont bien des tables ?

Répondre à sebsauvage

4

soussou, le 16 mai 2003 à 16:28:04

Oui se sont des tables.
please help

Répondre à soussou

5

sebsauvage, le 16 mai 2003 à 16:38:10

Je ne vois pas bien ce que tu veux faire.
Tu pourrais expliquer un peu ?
Tu travailles avec quel serveur SQL ? Microsoft SQL Sever, Oracle, autre ?

Répondre à sebsauvage

6

soussou, le 16 mai 2003 à 16:44:33

J'utilise sql server, et j'ai une procédure stockée dans laquelle, je veux faire ce traitement :
j'ai par exple cette requete sql : select * from t1, t2,t3,t4
je veux récupérer dans cette requête les tables t1,t2,t3 et t4
alors puisque ds les procédures stockées, on utilise le langage c, je me suis dis on peut utiliser les fonct c pr parcourir cette chaine de caractère (la requête sql ) et récupérer les tables (en vérifiant ce qui est après 'from'...)
voilà, j'espère que j'ai été claire
merci d'avanace

Répondre à soussou

7

sebsauvage, le 16 mai 2003 à 16:46:19

Bon... d'abord est-ce que tes tables t1,t2,t3 et t4 ont exactement la même structure ?

Répondre à sebsauvage

8

soussou, le 16 mai 2003 à 16:48:28

Ces noms quelconques. Pr le moment, je veux juste résoudre le cas simple, sinon après ça sera plus compliqué, cad j'aurai une structure comme ça : select * from t1 a 'table1', t2....

Répondre à soussou

9

sebsauvage, le 16 mai 2003 à 16:51:57

Je repose ma question:
Est-ce que tes tables auront exactement la même structures ?

Si la réponse est oui, alors on peut effectivement ramener toutes les données avec une seule requête.
Si la réponse est non, c'est tout simplement impossible.

Répondre à sebsauvage

10

soussou, le 16 mai 2003 à 16:53:07

Oui, elles ont la même structure.
merci

Répondre à soussou

11

sebsauvage, le 16 mai 2003 à 16:53:55

Sans ce cas tu peux faire:

select * from t1
union all
select * from t2
union all
select * from t3

ça permet de ramener le contenu des tables dans un même recordset.

Répondre à sebsauvage

12

soussou, le 16 mai 2003 à 16:55:22

Mais pk vous faîtes ça? après qd j'aurai une requête plus compliquée, ça complique tous.

Répondre à soussou

13

sebsauvage, le 16 mai 2003 à 17:01:08

Ben oui je ne vois pas l'intéret de ramener toutes les tables pour mouliner dessus ensuite.
Autant faire faire le travaille de filtrage par le serveur SQL...

Mais il faut que tu explique un peux plus précisément ton problème.

Répondre à sebsauvage

14

soussou, le 16 mai 2003 à 17:03:36

Pr le moment je veux récupérer les tables ds une requête simple : select * from t1,t2,t3

mais après je peux avoir une requête plus compliquée :
select * from t1 as table1,t2 where i in (select * from t3)...

donc je crois qu'on peut pas faire ça.

Répondre à soussou

15

sebsauvage, le 16 mai 2003 à 17:12:57

Tu connais les jointures SQL ?

Répondre à sebsauvage

16

soussou, le 16 mai 2003 à 17:13:27

Oui.

Répondre à soussou

17

sebsauvage, le 16 mai 2003 à 17:16:21

Select * from t1 as table1,t2

ça ne ramènera rien de bon.

Si tu as 2 tables dans ta clause FROM, il te faut une condition de jointure entre les table t1 et t2.
Et tu ne peux pas utiliser *. Tu est obligé de nommer les champs que tu veux ramener.

Répondre à sebsauvage

18

soussou, le 16 mai 2003 à 17:17:38

Pas nécessairement. je peux ne pas mettre des conditions si je veux afficher le contenu de ttes les tables.

Répondre à soussou

19

sebsauvage, le 16 mai 2003 à 17:25:40

Et bien si tu veux afficher le contenu de toutes les tables:

select * from t1;
select * from t2;
select * from t3;

Répondre à sebsauvage

20

soussou, le 19 mai 2003 à 10:38:19

Je veux pas afficher le contenu des tables, mais je veux avoir le nom des tables, voici un exple de ce que je veux :
j'ai une requête (chaîne de car) : select * from t1,t2,t3,t4

je veux récupérer de cette chaîne : t1 t2 t3 et t4.
cad, il faut que je parcours la requête qd je trouve le mot 'from', je récupère ts les noms des tables ds la clause from.

Répondre à soussou
Collection CommentÇaMarche.net