Bonjour
Est il possible de créer dans la même session ou le même script PHP plusieurs tables temporaires ?
(PHP 5, Mysql 5)
Je n'arrive pas à trouver l'info
Merçi d'avance pour une éventuelle réponse
Jean Louis
Bonjour
Est il possible de créer dans la même session ou le même script PHP plusieurs tables temporaires ?
(PHP 5, Mysql 5)
Je n'arrive pas à trouver l'info
Merçi d'avance pour une éventuelle réponse
Jean Louis
Il me semble l'avoir déjà fait donc je dirais oui. As-tu essayé ?
Oui et c'est bien cela le problème !
J'explique le problème :
Dans un prog PHP je crée deux tables temporaires mysql T1 et T2.
Je les crée et les remplis dans une fonction du script. Quand je trace je vois que j'ai bien les insert adéquats dans chaque table
Puis pour tester avant de lancer ma requête (join et union) j'essaie de lister le contenu de ces deux tables :
et la j'ai le message d'erreur sql : la table T1 n'existe pas.
(Si je ne cherche à afficher que la table T2, c'est OK)
Est ce que c'est le fait de les remplir dans une fonction et pas dans le corps du programme ? (mais là je m'éloigne de l'objet du forum !)
D'où l'objet initial de ma question.
Jean Louis
Ce qui dois, je pense, fonctionner en SQL :
=> 3 requêtes enchaînées dans le même script donc la même connexion.
Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 CREATE TEMPORARY TABLE t1 SELECT des_colonnes FROM la_table_1 WHERE condition; CREATE TEMPORARY TABLE t2 SELECT des_colonnes FROM la_table_2 WHERE condition; SELECT des_colonnes FROM t1 INNER JOIN t2 ON condition_de_jointure
La manière de le faire en PHP :
=> On ouvre la connexion, on envoie les trois requêtes l'une après l'autre puis on referme la connexion.
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 mysql_connect(les_parametres_qui_vont_bien); $req1 = " CREATE TEMPORARY TABLE t2 SELECT des_colonnes FROM la_table_2 WHERE condition "; mysql_query($req1); $req2 = " CREATE TEMPORARY TABLE t2 SELECT des_colonnes FROM la_table_2 WHERE condition "; mysql_query($req2); $req3 = " SELECT des_colonnes FROM t1 INNER JOIN t2 ON condition_de_jointure "; mysql_query($req3); mysql_close();
Ça fait longtemps que je n'ai pas eu à faire ce genre de truc mais je crois bien que c'est comme ça que ça fonctionne.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager