Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Vitesse d'une requete [ Archives ASP & ASP.NET / Trucs et astuces ] (Jackboy)

mercredi 8 mars 2006 à 22:34:35 | Vitesse d'une requete

Jackboy

Sous asp3, j'ai crée un calendrier événementielle et j'indique à l'utilisateur via une icone qu'un événement est présent pour tel jour. Ma requete est donc créer pour toute les journées du mois. Je me demande donc quelle requete serait la moin gourmante en processus.

Ma requete pour le moment si o_EnrDate > 0 alors j'affiche l'icone:

 'verifier si un event est present pour une journee
 Public Sub EventBdDay(o_EnrDate, i_Year, i_Month, i_Day)
    
  If i_Year <> "" and i_Month <> "" and i_Day <> "" Then
   CreateRs rsItem, 1, 1
   SQL_Query = "SELECT Event_Id FROM Event Where Event_Date_Start = '" & i_Day & "/" & i_Month & "/" & i_Year & "'"
   rsItem.Open SQL_Query, strCon
   o_EnrDate = rsItem.recordcount
   CloseRS(rsItem) 'call de la sub pour fin du recordset
  end if
 End Sub


mercredi 8 mars 2006 à 23:24:58 | Re : Vitesse d'une requete

Yopyop

re,

y a-t-il un seul événement par jour ?
y a-t-il plusieurs événements par jour par utilisateur (je vois que tu ne passes aucun paramètres concernant l'utilisateur courant... ? ) ?
quelle base de donnée utilises-tu (tu pourrais sortir tous les événements du mois pour un utilisateur en une seule requête)?

yopyop

jeudi 9 mars 2006 à 00:33:15 | Re : Vitesse d'une requete

Jackboy

Salut !

Je suis sur une bd access, il peut y avoir plusieur evenement par jour, mais les evenement sont multi usager. L'application est utiliser simultanément par plusieur utilisateur. l'application est tres lente, je me demande si je vais migrer vers une autre bd(mysql ou sqlserver)...



 


jeudi 9 mars 2006 à 02:08:04 | Re : Vitesse d'une requete

Yopyop

salut,

tu peux utiliser

SELECT Count(*)  AS nbEvents, event_start_date, DAY(event_start_date) as zeDay
FROM EVENTS
WHERE MONTH(event_start_date)=3
AND YEAR(event_start_date)=2006
GROUP BY event_start_date
ORDER BY event_start_date ASC

tu initialises une variable iDay à 1 (jour en traitement)
ensuite tu parcours ton recordset (d'abord tester s'il n'est pas vide...)

do while not ors.eof
   if iDay<CInt(ors.fields("zeday").value) Then
      'pas d'event pour le jour
      'on affiche les jours de iDay à ors.fields("zeday").value-1 comme vide
       For i= iDay to CInt(ors.fields("zeday").value)-1
             'ton affichage du genre
            response.write i & "/" & iMonth & "/" & iYear & " - 0 event<br>"
       Next
      iDay = CInt(ors.fields("zeday").value)
 'affichage des infos de la base (date, nombre d'event)
         response.write ors.fields("zeday").value & "/" & iMonth & "/" & iYear & " - " & ors.fields("nbEvents").value & " events<br>"
   Else
         'affichage des infos de la base (date, nombre d'event)
         response.write ors.fields("zeday").value & "/" & iMonth & "/" & iYear & " - " & ors.fields("nbEvents").value & " events<br>"
   End If
iDay=iDay+1
 ors.movenext
loop

ensuite tu contrôles si iday<nombre de jour dans le mois :
non->traitement terminé
oui-> afficher la liste de jours restants


bref... un truc du genre...


yopyop

jeudi 9 mars 2006 à 02:13:59 | Re : Vitesse d'une requete

Yopyop

correction (ca fait quelques lignes de moins dans la boucle )

do while not ors.eof 

   if iDay<CInt(ors.fields("zeday").value) Then 'si c'est le cas, il n'y a pas d'envetns entre iDay et la date, attention iDay ne devrai jamais être>queCInt(ors.fields("zeday").value) 

      'on affiche les jours de iDay à ors.fields("zeday").value-1 comme vide
       For i= iDay to CInt(ors.fields("zeday").value)-1
             'ton affichage du genre
            response.write i & "/" & iMonth & "/" & iYear & " - 0 event<br>"
       Next
      iDay = CInt(ors.fields("zeday").value)
   end if
'maintenant le jour suivant est un jours avec un(des) event(s)
   'affichage des infos de la base (date, nombre d'event)
    response.write ors.fields("zeday").value & "/" & iMonth & "/" & iYear & " - " & ors.fields("nbEvents").value & " events<br>"
'on passe au jour suivant
iDay=iDay+1
 ors.movenext
loop

yopyop



Cette discussion est classé dans : requete, event, rsitem, enrdate, year


Répondre à ce message

Sujets en rapport avec ce message

[Microsoft][ODBC Microsoft Access Driver] System resource exceeded. [ par Jackboy ] Bonjour !Je suis sous asp et access et j'ai beaucoup de probleme (vitesse) et maintenant cette erreur [Microsoft][ODBC Microsoft Access Driver] System problème requete sql script asp [ par lenneth666 ] Bonjour j'ai une petit problème dans mon script ASP. ma requete SQL est la suivante     sql="select entreprise_id from entreprise where nom ='"&nom_ requete execute scalar [ par lenneth666 ] bonjour j'aurais aimé savoir comment faire pour qu'un execture scalar me retourne là valeur 0 au lieu de la valeur Null si la requete sql ne retourne help [ par remy34 ] Bonjour est ce qu'il est possible de mettre le résultat d'une requete dans une liste déroulante?Est il également possible de faire une requete par rap Requete SQL "dynamique" [ par PunkDude424 ] Salut, je fais un site d'évaluation des compétences....c'est comme un mini test online.....je dois créer la section administrateur qui permet d'ajoute Executer une requete une seule fois [ par imayaya ] Boujour,j'ai un problème dans mon script.je m'explique:je veux que ma requete s'execute dans ma base une seule fois. les lignes de commande sont ==>$r pb distinct en asp [ par Dyr3e ] bonjour, je code actuelement en asp, sous une base access.jai eu un truc etrange recemment : jeffectue une requete sous access, et il me retourne 8 li Pb ADO en ASP [ par Dyr3e ] bonjour , j'aimerais savoir si il existe une requete en ADO ou ASP pour savoir combien d'enregistrement ont été trouvé lors d'une requete SQL Pb requete avec MYSQL et ASP.NET [ par vinsator ] Bonjour,je débute en asp.net, je fais le tp de coach asp.net sauf qu'au lieu d'utiliser une base SQL server j'utilise une base MySQL.Voici mon pb :Qua Syntaxe Requete sur web developer ! HELP [ par vinsator ] Re bonjour,SVP aidez moi ma question est toute simple,Pkoi j'ai une erreur de syntaxe quand je créer une requete dans visual web developer 2005 sur ma


Nos sponsors

Sondage...

CalendriCode

Janvier 2009
LMMJVSD
   1234
567891011
12131415161718
19202122232425
262728293031 

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,312 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.