begin process at 2010 03 18 06:11:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive ASP & ASP.NET

 > 

Archives ASP & ASP.NET

 > 

AU SECOURS !!!!

 > 

recordset volumineux


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

recordset volumineux

jeudi 13 mars 2003 à 11:46:52 | recordset volumineux

Arkane

Je traite une base de donnée concequente avec des memebre par milliers

Par un formulaire, j interroge la DB pour afficher les membres souhaité.

Pour faciliter, la navigation, je n affiche qu une partie du resultat (10 par ex )pour ne pas avoir 1000 ligne sur ma page :) (exemple : resultat requet sur moteur de recherche)

Mon probleme c que qd je veux afficher les x suivant ou x precedent, mon script va reintéroger la DB pour refaire uen selection et trier les X suivant/precedent souhaité !!!

N y a t il pas moyen pour optimiser de faire une selection, une fois pour toute, et afficher qu'une partie de cette selection, et naviguer dans le resultat ss reinterroge la db ????

en qq sorte obtenir un resultat 'offline' de la DB !!

Merci pour vos reponses. Bonne journée
Bonne Programmation ;)
samedi 15 mars 2003 à 01:36:44 | Re : recordset volumineux

Paxcal

une possibilité.

Elle nécessite que tu ais les droits d'ecriture sur le disque.



Page rs.asp
<OBJECT RUNAT="SERVER" SCOPE="page" ID="fso" PROGID="Scripting.fileSystemObject"></OBJECT>
<%

function getAuthors( startPos , nbRows , bForce )
dim sql , cn , rsData


set rsData = Server.CreateObject("ADODB.recordset")
'si on ne force pas l'interrogation au serveur,
et que le fichier existe on l'ouvre à partir du disque
if ( not bForce and fso.FileExists( Server.MapPath(Session.SessionID + "rs"))) then
rsData.Open Server.MapPath(Session.SessionID + "rs")
else
'sinon, on execute la requete
set cn = Server.CreateObject("ADODB.connection")
sql = "select * from authors"
rsData.CursorLocation=adUseClient
rsData.CacheSize=20

cn.ConnectionString=Application("connectionString")
cn.Open
rsData.Open sql,cn
set rsData.ActiveConnection=nothing
cn.Close
set cn = nothing

'on supprime un éventuelle version sur disque
if ( fso.FileExists( Server.MapPath(Session.SessionID + "rs"))) then
call fso.DeleteFile( Server.MapPath(Session.SessionID + "rs"),true)
end if
'on ectit le recordset sur disque
call rsData.Save (Server.MapPath(Session.SessionID + "rs"),adPersistADTG )
end if

'on se positione à la position de départ
rsData.Move(startPos)
' on copie les données dans un tableau
'l'utilisation d'un tableau est plus rapide que la navigation dans un recordset

'on retourne le tableau
getAuthors = rsData.GetRows( nbRows )
exit function
end function

dim arValues


arValues = getAuthors(0, 100, false)
for i = 0 to ubound( arValues , 2 ) 'lignes
Response.Write "<br>********** #" & i & "<br>"
for j = 0 to ubound( arValues , 1 ) 'colonnes
Response.Write arValues( j , i ) & "<br>"
next
next

%>

global.asa

<!--metadata name="Microsoft ActiveX Data Objects 2.6 Library" type="TypeLib" uuid="{00000206-0000-0010-8000-00AA006D2EA4}"-->
<SCRIPT LANGUAGE="vbscript" RUNAT=Server>
sub Application_OnStart
Application("connectionString") = "dsn=tom;uid=sa;Password=******;"
end sub
sub Session_OnStart
end sub

'on supprime les données cachées
'dans le Session_OnEnd, aucun des object intrinsect ne fonctionne
'on a juste accé au Session.SessionID
il faut donc écrire le chemin en dur
sub Session_OnEnd
dim fso
set fso = Server.CreateObject("Scripting.fileSystemObject")
if fso.FileExists( "C:\Inetpub\wwwroot\forum\recordset\" & Session.SessionID & "rs" ) then
call fso.DeleteFile( "C:\Inetpub\wwwroot\forum\recordset\" & Session.SessionID & "rs", true)
end if
set fso=nothing
end sub
</SCRIPT>




Pascal
lundi 17 mars 2003 à 08:51:06 | Re : recordset volumineux

Arkane

une ecriture dasn un fichier !

Oui j y ai pensé aussi :) et çà aurait ete ma seule solution si ce n est que je dois avoir la possibilite de trier mon Rs sur les collone qu il affiche !! :(

donc pas de #txt !! :'(

Merci pour ta proposition ;)

Programmez bien

-- Arkane the Keroberos --
lundi 17 mars 2003 à 16:14:56 | Re : recordset volumineux

Paxcal

tu peux trier un recordset sans qu'il soit connécté à la base de données.

la propriété sort



rs.sort="nom desc, prenom"


Pascal



-------------------------------
Réponse au message :
-------------------------------

> une ecriture dasn un fichier !
>
> Oui j y ai pensé aussi :) et çà aurait ete ma seule solution si ce n est que je dois avoir la possibilite de trier mon Rs sur les collone qu il affiche !! :(
>
> donc pas de #txt !! :'(
>
> Merci pour ta proposition ;)
>
> Programmez bien
>
> -- Arkane the Keroberos --
mercredi 11 février 2004 à 18:41:17 | Re : FSO ASP JAVA, pour editeur HTML en HTML + javascript

BBeppe

Bonjour

Cherche appui pour projet structuré d'Éditeur Multilingue GREC, ARMENIEN, FRANCAIS!
Mon matos Win98 pas de serveur.
Un editeur HTML en HTML dont j ai ote le code submit mailto qui ne m'interesse pas (ex code d'envoi de mails).

J'ai l'intention de me servir de cet editeur de preference a un
autre parce qu il sera Multilingue.
Compatible HTML SEULEMENT !

Grave Manque : l'implementation d'une FSO, pour sauver sur disque dur le boulot.

Actuellement en JAVASCRIPT je sauve le CODE Html plus le code de l'Éditeur. ;O) Ce qui est pas la meilleur façon de faire.

Pour le multilinguisme j'ai trouvé un biais, je passe par le choix de la TRUETYPE !

J'accepte éventuellment de partager mes droits avec un programmeur qui menera à bien la partie code.
Car il est possible de FAIRE UN VRAI PROGICIEL COMMERCIAL! Moi j'en suis parsuadè.

le_premier_bourguignon@yahoo.fr



Echange traduction contre AIDE en SCRIPT


Cette discussion est classée dans : recordset, afficher, db, resultat, selection


Répondre à ce message

Sujets en rapport avec ce message

Afficher un resultat de la base dans un select [ par boulou ] pouvoir afficher le choix de la personne dans un select avec aussi tous les autres choix possible.quand on arrive sur la page c'est le choix de la per afficher les resultat sur la page [ par chris81 ] ma connexion a ma base utilise un datareader faut il autre chose pour que que mes resultat de ma connexion a la base apparaissent sur ma page aspx. Afficher les détails d'une selection d'un menu déroulant dans un formulaire [ par rom268 ] bonjour,J'ai essayé de faire court dans le titre tout en essayant d'expliquer au mieux mon probleme d'aujourd'hui !Donc, la problématique du jour est Jointure entre 2 recordset [ par Boris_Stans ] Je vous poste le code pour une meilleur compréhension : Mon souci vient de la requette sql3. Le problème est que je n'arrive pas a faire une jointure ASp chartdirector [ par benjiconventi ] bonjour a l'équipe web et a tous les internautes, voila j'ai un petit souci en asp dut a mon niveau débutant.J'ai deux pages asp une qui ouvre ma base Dernier enregistrement d'un recordset [ par richch ] Bonjour, Comment faire pour aller directement au dernier enregistrement d'un Recordset ? URGENT : DETAILSVIEW ! ! ! [ par fanfan1810 ] Bonjour, Je suis novice sur ASP.NET et j'aimerai savoir s'il est possible dans un detailsview d'afficher une ligne à coté d'une autre au lieu qu'elle EnterpriseLibrary 2005 vs EnterpriseLibrary 2006 the difference is obvious! [ par morisse ] Bonjour a tous,Je suis en train de reconvertir du code ecrit avec l'EnterpriseLibrary january 2005avec la nouvelle de 2006.Petit example before/after0 afficher un bouton ssi gridView modifié [ par bootchoz ] bonjour, je souhaite afficher un bouton seulement si mon gridview a été modifié. je pensais utiliser if(GridView1.RowUpdated) mais cela afficher une web form à partir d'un bouton [ par janineinfo ] salut tt le monde,je voudrais afficher une webform à partir d'un bouton qui existe ds une autre webform, jai utilisé ce code mais ça n'a pas marché   


Nos sponsors


Appels d'offres

Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,343 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales