EcommerceDEV. Développement, optimisation et sécurisation des sites de commerce électronique.
arrowAccueil arrow Programmation arrow Base de données arrow Retourner des enregistrements aléatoires sous ASP SQL Server MySQL ou tout autre SGBDR
Vendredi 25 juil 2008
Nom d'utilisateur     Mot de passe      Conserver       Mot de passe perdu ?  Inscription
Menu
Accueil
A propos du site
Carte du site
Moteur de recherche
Nouvelles
Contactez-nous
Evénements
Lettres de nouvelles
- - - - - - -
Analyse
Conception
Optimisation
Programmation
Sécurité
Produits/Services
avr 11 2006
Retourner des enregistrements aléatoires sous ASP SQL Server MySQL ou tout autre SGBDR Version imprimable Suggérer par mail
Appréciation des utilisateurs: / 2
FaibleMeilleur 
Programmation - Base de données
Ecrit par Kamal AOUDA   
11-04-2006
Écrire sous ASP SQL Server MySQL ou tout autre SGBDR, une requête qui retourne des enregistrements aléatoires

Écrire avec ASP, SQL Server,  MySQL ou tout autre SGBDR une requête  qui retourne des enregistrements aléatoires (pratique lorsqu'on souhaite afficher des fiches de produits de manière aléatoire sur la vitrine d'un site de commerce électronique).


Sous SQL Server on peut utiliser la technique suivante :


select * from TABLE order by newid()

Sous MySQL on peut opter pour la technique suivante :


Select * From TABLE Order By RAND()

Sous les autres SGBDR on peut céer du code ASP pour récupérer de manière aléatoire un enregistrement dans un jeu d'enregistrements

<%
' Définition du connection string
' le fichier "adovbs.inc" contient les constantes ADO
%>
<!-- #include file="Include/Connection.asp" -->
<!-- #include file="Include/adovbs.inc" -->
<%

Dim SQL, rs, MyConn
Dim NbRecord, Pos

' Définition de la requête SQL
SQL = "Select * From SousListe"

' Instance de la connection et du recordset
set MyConn = Server.CreateObject("adodb.connection")
Set Rs = Server.CreateObject("Adodb.recordset")

' Ouverture de la base
'Note : ConnectionString votre connection a votre BD
MyConn.Open ConnectionString

' Ouverture du recordset
Rs.Open Sql, MyConn , adOpenStatic, adLockPessimistic

' Requete vide ?
If Not Rs.EOF Then
' Se positionner au dernier record
Rs.MoveLast
' Se positionner au premier record
Rs.MoveFirst
' Saisir le nombre de record
NbRecord = Rs.RecordCount

' Initialize random-number generator.
Randomize

' Définir la position a atteindre
Pos = Int((NbRecord * Rnd))
' Se positionner au record aléatoire
Rs.Move (Pos)

' Afficher le champ2
Response.Write rs("Nom")
End If

' Fermeture du recordset
Rs.Close

' Fermeture de la connection
MyConn.Close

' Destruction des instances
Set MyConn = Nothing
Set rs = Nothing

%>

Référence:
Une partie du code source reproduit ci-dessus est extraite du site asp-php.net http://www.asp-php.net/


 

Dernière mise à jour : ( 21-06-2006 )
< Précédent
Moteur de recherche
Recommander ce site
Collaboration
Téléchargements
Derniers événements
Aucun événement
Sondages

Quelle est la meilleure technologie pour programmer un site e-commerce ?

  
Blogs Ecommerce
Blog de capitaine commerce
top

Ce site a été crée avec le CMS Mambo. Un logiciel gratuit disponible sous licence GPL.

Copyright Ecommerce DEV 2006.

Hosted by SiteGround