Comment palier à l'utilisation des vues
kakashi05
Messages postés
195
Statut
Membre
-
kakashi05 Messages postés 195 Statut Membre -
kakashi05 Messages postés 195 Statut Membre -
Bonjour,
Je viens vers vous car j'ai un problème, je m'explique je suis entrain de développer une petite application en php qui aura pour simple bute d'afficher des données enregistrer.
Pour afficher certain donnée j'ai du créer des "vues" (en local) mais lors du déploiement de l'application sur le serveur je me rend compte que la version de Mysql présent sur le poste est une 4.1 l'utilisation des vues n'étant pas prise en compte sur cette version. L'idée serai dans un premier temps trouvé une solution pour palier l'utilisation des vues dans mysql. Et s'il y a pas de solution je verrai avec l'administrateur s'il peuvent le mettre à jour mysql.
Je vous montre la vue que j'ai crée
le nom de la vue: yy_date_de_livraison_dune_demande
cette vu je l'utilise dans une autre requête.
Avez vous un autre moyen de récrire cette requête?
J'ai pensé au requête imbriqué mais je vous pas trop comment l'utiliser dans mon cas.
Serait il possible de stocker une requête dans une variable en php par exemple?
Je reste à votre entière disposition pour toute questions ou information supplémentaire.
Merci
Je viens vers vous car j'ai un problème, je m'explique je suis entrain de développer une petite application en php qui aura pour simple bute d'afficher des données enregistrer.
Pour afficher certain donnée j'ai du créer des "vues" (en local) mais lors du déploiement de l'application sur le serveur je me rend compte que la version de Mysql présent sur le poste est une 4.1 l'utilisation des vues n'étant pas prise en compte sur cette version. L'idée serai dans un premier temps trouvé une solution pour palier l'utilisation des vues dans mysql. Et s'il y a pas de solution je verrai avec l'administrateur s'il peuvent le mettre à jour mysql.
Je vous montre la vue que j'ai crée
le nom de la vue: yy_date_de_livraison_dune_demande
SELECT demande_ou_projet.IdDemande, demande_se_trouve_dans_etat.Date_entree AS PremierDeDate_entree FROM demande_ou_projet INNER JOIN demande_se_trouve_dans_etat ON demande_ou_projet.IdDemande = demande_se_trouve_dans_etat.IdDemande WHERE (((demande_se_trouve_dans_etat.Code_etat)="LID")) GROUP BY demande_ou_projet.IdDemande
cette vu je l'utilise dans une autre requête.
SELECT demande_ou_projet.IdDemande, Left(LIBELLE_FORFAIT_BUDGET,20) AS Projet, demande_ou_projet.IdClientDemande, Left(Libelle,15) AS Intitule, demande_ou_projet.Date_livraison_prevue, yy_date_de_livraison_dune_demande.PremierDeDate_entree AS Livraison_reelle, demande_ou_projet.Date_reception, demande_ou_projet.Type_demande, demande_ou_projet.niveau_de_severite FROM sous_systeme INNER JOIN ((forfait_budget INNER JOIN demande_ou_projet ON forfait_budget.ID_FORFAIT_BUDGET = demande_ou_projet.REF_FORFAIT_BUDGET) LEFT JOIN yy_date_de_livraison_dune_demande ON demande_ou_projet.IdDemande =yy_date_de_livraison_dune_demande.IdDemande) ON sous_systeme.IdSousSyst = forfait_budget.REF_SOUS_SYSTEME GROUP BY demande_ou_projet.IdDemande, Left(LIBELLE_FORFAIT_BUDGET,20), demande_ou_projet.IdClientDemande, Left(Libelle,15), demande_ou_projet.Date_livraison_prevue, yy_date_de_livraison_dune_demande.PremierDeDate_entree, demande_ou_projet.Date_reception, demande_ou_projet.Type_demande, demande_ou_projet.niveau_de_severite, sous_systeme.IdAppli HAVING (((Left(LIBELLE_FORFAIT_BUDGET,20))="S/M Europe" Or (Left(LIBELLE_FORFAIT_BUDGET,20))="S/M France") AND ((yy_date_de_livraison_dune_demande.PremierDeDate_entree) Between "03/02/2011" And "03/02/2011" ) AND ((sous_systeme.IdAppli)="DEV"))
Avez vous un autre moyen de récrire cette requête?
J'ai pensé au requête imbriqué mais je vous pas trop comment l'utiliser dans mon cas.
Serait il possible de stocker une requête dans une variable en php par exemple?
Je reste à votre entière disposition pour toute questions ou information supplémentaire.
Merci
A voir également:
- Comment palier à l'utilisation des vues
- Utilisation chromecast - Guide
- Télécharger gratuitement notice d'utilisation - Guide
- Comment savoir qui a vu mes publications sur facebook - Guide
- Comment voir les vues de profil sur instagram - Guide
- Vues story instagram disparu - Forum Réseaux sociaux
3 réponses
Bonjour,
MySQL 4.1 est vraiment moisit. Changez de version.
Je ne sais même pas si MySQL 4.1 gère correctement les sous requêtes.
De toute façon vous aurez besoin d'une jointure sur la table yy_date_de_livraison_dune_demande puisque vous affichez un de ces champs dans le select
Par contre le from je ne le ferais pas sur sous_systeme, mais sur demande_ou_projet, puisque vous n'utilisez aucun champ de sous_systeme dans le select.
MySQL 4.1 est vraiment moisit. Changez de version.
Je ne sais même pas si MySQL 4.1 gère correctement les sous requêtes.
De toute façon vous aurez besoin d'une jointure sur la table yy_date_de_livraison_dune_demande puisque vous affichez un de ces champs dans le select
Par contre le from je ne le ferais pas sur sous_systeme, mais sur demande_ou_projet, puisque vous n'utilisez aucun champ de sous_systeme dans le select.