Accueil > Forum > > > > SQL 2000 Query failed ???
SQL 2000 Query failed ???
lundi 16 janvier 2006 à 15:06:16 |
SQL 2000 Query failed ???

espadon2
|
Bonjour a tous, Voila j' ai un petit probleme d'excution d'une requete sun un serveur SQL 2000 (WINDOWS 2000 server) dans un de mes scripts PHP : Warning: MS SQL: Query failed in d:\dvlp\va\includes\function.php on line 816 Le contexte de la base de donnes a t chang en 'stat'.
j'ai une table VENTES (de produits) , et je crée une requete en fonction de certaines selection de l' utilisateur. En resumé , l'utilsateur selectionne ou pas , une année , un mois, un fournisseur , un de ses magasins ...etc et je dois lui renvoyer la quantité , le chiffre affaire, la marge etc ... pour chaque produit correspondant aux critéres de selection Ma requete marche dans l' analyseur de requete de MS SQL 2000, mais pas avec PHP :-( EXP: pour DECEMBRE 2005 AVEC COMPARAISON 2004SELECT code_article,sum(Case When annee='2005' Then qte Else 0 End) as qte,sum(Case When annee_facture='2004' Then qte Else 0 End) as qtepre,sum(Case When annee='2005' Then achat Else 0 End) AS achat,sum(Case When annee_facture='2004' Then achat Else 0 End) AS achatpre ,sum(Case When annee='2005' Then montant_net_fact Else 0 End ) AS chiffaff ,sum(Case When annee='2004' Then montant_net_fact Else 0 End ) AS chiffaffpre,sum(Case When annee='2005' Then marge Else 0 End ) AS marge,sum(Case When annee='2004' Then val_marge Else 0 End ) AS margepre from ventes WHERE mois <='12' GROUP BY code_article ORDER BY chiffaff DESC
Quelqu'un y comprends quelque chose ??? Merci de m' aider SVP , là je patoge .. C'est pas le temps d'execution en php , je l' ai mis a 0 dans php.ini .... Merci d'avance... Amicalement, espadon
|
|
lundi 16 janvier 2006 à 16:00:03 |
Re : SQL 2000 Query failed ???

sidf
|
SELECT code_article, sum(Case When annee='2005' Then qte Else 0 End) as qte, sum(Case When annee_facture='2004' Then qte Else 0 End) as qtepre, sum(Case When annee='2005' Then achat Else 0 End) AS achat, sum(Case When annee_facture='2004' Then achat Else 0 End) AS achatpre, sum(Case When annee='2005' Then montant_net_fact Else 0 End ) AS chiffaff, sum(Case When annee='2004' Then montant_net_fact Else 0 End ) AS chiffaffpre, sum(Case When annee='2005' Then marge Else 0 End ) AS marge, sum(Case When annee='2004' Then val_marge Else 0 End ) AS margepre from ventes WHERE mois <='12' GROUP BY code_article ORDER BY chiffaff DESC
tu ne te serais pas trompé dans la sélection (en gras) annee_facture ou annee ???
apparemment le case marche en php
|
|
lundi 16 janvier 2006 à 16:07:53 |
Re : SQL 2000 Query failed ???

FhX
|
Moi ce que je voudrais voir, c'est le code PHP qu'il utilise. Car si ca marche via SQL, ca marche aussi pour PHP. Je suis quasi sur que c'est un problème de guillemets...
|
|
lundi 16 janvier 2006 à 16:58:54 |
Re : SQL 2000 Query failed ???

espadon2
|
Merci de vous pencher sur mon petit probleme
Il y a bien une erreur dans ma requete sur le champ annee , mais jsute ici , pas dans mon script ... copier/coller raté Désolé
Le case marche en php , déjà utilisé dans d'autres scripts
------------ MON CODE PHP -----------
function GiveMeProduits($aAnnee,$aMois,$aFourniseur,$aMagasin) { $server= "servSQL"; $login="sa"; $password="toto"; $base="achat_vente"; $idConn=mssql_connect($server,$login,$password) ; mssql_select_db($base) ; $anneePre=$aAnnee-1; $query ="SELECT code_article,sum(Case When annee='$aAnnee' Then qte Else 0 End) as qte,sum(Case When annee='$anneePre' Then qte Else 0 End) as qtepre,sum(Case When annee='$aAnnee' Then achat Else 0 End) AS achat,sum(Case When annee='$anneePre' Then achat Else 0 End) AS achatpre ,sum(Case When annee='$aAnnee' Then montant_net_fact Else 0 End ) AS chiffaff ,sum(Case When annee='$anneePre' Then montant_net_fact Else 0 End ) AS chiffaffpre,sum(Case When annee='$aAnnee' Then marge Else 0 End ) AS marge,sum(Case When annee='$anneePre' Then val_marge Else 0 End ) AS margepre from ventes WHERE mois <='$aMois'"; if ($aFourniseur!="") { $where = $where." AND code_four='$aFournisseur'"; } if ($aMagasin!="") { $where = $where." AND code_mag='$aMagasin'"; } $query = $query .$where ." GROUP BY code_article ORDER BY chiffaff DESC"; // je faits un echo de la requete , puis copier et coller dans analyseur de requete // et elle marche ...mais pas ici echo $query ; $result=mssql_query ($query,$idConn); $nb=mssql_num_rows($result); for ($i=0;$i<$nb;$i++) { $row=mssql_fetch_row($result); echo $row[0]."-".$row[1]."-".$row[2]."-".$row[3]; } mssql_close($idConn); } -------------------------------------
Voila , si vous pouvez me donner une piste .... je pensais au temps d' execution , car ca demande un peu de temps .. mais bon je sais pas trop ......
la table a environ 1 000 000 de lignes au fait
Merci d'avance...
Bonne journée
Amicalement, espadon
|
|
lundi 16 janvier 2006 à 17:02:09 |
Re : SQL 2000 Query failed ???

espadon2
|
ne pas tenir compte de l' erreur de frappe $aFournisseur/$aFourniseur ..... oublié un S espadon
|
|
lundi 16 janvier 2006 à 17:12:12 |
Re : SQL 2000 Query failed ???

sidf
|
chez moi mssql ne fonctionne pas essaie de remplacer la chaine mssql par mysql sinon je ne vois pas !
|
|
lundi 16 janvier 2006 à 17:28:37 |
Re : SQL 2000 Query failed ???

espadon2
|
Ben il faut activer mssql dans php.ini c'est tout ...en retirant le point virgule devant extension=php_mssql.dll
je vais pas attaquer une base microsoft SQL 2000 avec mysql_query ...etc .. !!!???? va pas bien marcher ca ... mysql c'est juste .. ben pour une base mysql ...
Mais merci tout de meme......
ma fonction marche une fois , puis a le seconde execution elle plante ... bref c'est un peu aléatoire ..c'est ce que je pige pas ... je faits bien mssql_free_result, je ferme bien ma base ... mais rien .. le probleme ne vierndrai pas de PHP (essayer avec php4.1 et php 5.0) , ou SQL 2000 tout simplement , un bug ???
espadon
|
|
lundi 16 janvier 2006 à 17:33:11 |
Re : SQL 2000 Query failed ???

sidf
|
je n'ai rien dit mssql ça marche
|
|
lundi 16 janvier 2006 à 17:44:43 |
Re : SQL 2000 Query failed ???

malalam
|
Essaye un mssql_get_last_message () sur ton mssql_query () pour voir si on a plus d'infos. En attendant, tu devrais réflêchir à une autre façon de requêter, parce que faire autant de sommes, avec autant de conditions, sur une grosse table...ça risque de faire bcp, en effet.
|
|
lundi 16 janvier 2006 à 17:48:38 |
Re : SQL 2000 Query failed ???

sidf
|
il faudrait savoir dans quelles conditions la fonction plante et celles où elle ne plante pas $where n'est jamais initialisé mais je ne sais pas si ça a une incidence
|
|
Cette discussion est classée dans : end, case, annee, sum, when
Répondre à ce message
Sujets en rapport avec ce message
prob de retour à la ligne....lol [ par FleX ]
Alors voila :Je rentre mon texte dans une case texte, la case texte a l'option wrap et est multiligne.Apres, quand j'affiche ce string dans une case t
case a cocher !! [ par Xime ]
salut :)voila j'ai une page avec un tableau regroupant les employés stockés dans ma base mais j'aimerais pouvoir mettre devant chacun une case a coche
Formulaire dans base de donnée [ par fabiin ]
Salut,Alors voilasur mon site, les gens s'y inscrive, et il y a une case ou ils mettent une description longue...(j'accept le html)jusque la, tous va
Update [ par asterixobelix ]
François C.Merci à TortueGeniale pour son aide dans le message Session. Un autre problème se pose à moi:La supression et l'ajout d'un enregistrement f
snif j'y suis presque fonction + condition [ par tutouche ]
Bonsoir à tous,J'en ai marre je pensais y être en fin, mais malheureusement non!!!Qlq1 peut il me venir en secour?Voici mon code qui fonctionne parfai
image helllp!! [ par elpitou86 ]
Elpitousui un newbi en prog . je voulais savoir coment on faisait pour découper une image avec une grille et pour avoir les coordonnés ou un
probleme frame [ par Alferox ]
Bonjour,bon c pas vraiment du PHP, mais je ne suis pas foutu de trouver comment faire:Donc je mes ce code pour que la case de mon tableau change de co
Problème avec un formulaire tout simple !! [ par adys ]
G un pb avec un formulaire bidon, c'est à dire k'il n'y a k'une listbox et une case à cocher (et un bouton submit evidemment).je voudrais que le formu
Case a cocher activant ou desactivant des cases [ par nikos283 ]
Bonjour,Je cherche a créer un formulaire contenant des champs qui soit utilisable ou non en fonction du fait que l'utilisateur coche ou non une case.M
qcm et case a cocher sur une Base MySQL [ par caper ]
bonjour a tousje suis novice dans ce domainemon pb du moment est de faire un qcm avec une base MySQL.Les question doit s'afficher aleatoirement ainsi
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|