Se connecter avec
S'enregistrer | Connectez-vous

Requête SQL vide...

Dernière réponse : dans Programmation

Salut!!

J'ai fait une requete SQL comme suit :

requete_histo="SELECT numero,type_demand,date,traitement FROM Enreg_demand WHERE nom='toto' ORDER BY numero DESC;"

set result = Connection.execute(requete_histo)


Et suite à cela je lui demande de m'afficher la liste de demandes de toto (logique...)

Le truc c'est que si 'toto' en question n'a pas fait de demande, ça plante.

Je voudrais donc afficher un msg type "Vous n'avez pas effectué de demande", dans ce cas.

Comment faire? J'ai essayé qque chose comme ça, mais ça ne marche pas...

If IsNull(result("numero")) = true Then [affichage du msg d'erreur]


Qqn pourrait-il m'aider???


Merci bcp!! :hello: 

Autres pages sur : requete sql vide

Lassé par la pub ? Créez un compte

' Récupération historique
' ***********************

requete_histo="SELECT numero,type_demand,date,traitement FROM Enreg_demand WHERE nom='nom_util' ORDER BY numero DESC;"
set result = Connection.execute(requete_histo)


if IsNull(result("numero")) = true then

Set historik = Server.CreateObject("ADODB.Recordset")
historik.open

if historik.recordcount = 0 then...


Type d'erreur :
ADODB.Recordset (0x800A0E7D)
Impossible d'utiliser cette connexion pour effectuer cette opération. Elle est fermée ou non valide dans ce contexte.

le recordcount faut pas le faire sur la connexion mais sur le resultat de ta requete SELECT...

je pense plutot a un truc du genre:
  1. requete_histo="SELECT numero,type_demand,date,traitement FROM Enreg_demand WHERE nom='toto' ORDER BY numero DESC;"
  2.  
  3. set result = Connection.execute(requete_histo)
  4.  
  5. if result.recordcount = 0 then...


Mais je connais po l'ASP, juste le PHP, je fait ça avec qquechose comme "mysql_num_rows"

Comme pour Xav rien ne vaut un bon recordcount

If MyRst.recordcount <= 0 Then
' Affichage d'un message comme quoi il n'a pas d'éléments
Else
' tu continues ton affichage
MyRst.MoveFirst
While not MyRst.EOF
' Traitement & affichage des info des infos
Response.write "Blablabla " & MyRst.Fields("Champ1") & " blabla"
MyRst.MoveNext
Wend
End If

MyRst.close
MyDB.close

Pour pouvoir faire un recordCount, il faut ouvrir le curseur de cette manière:
Set rec = Server.CreateObject("ADODB.Recordset")
' paramétrage du type de curseur (il peut se déplacer en avant et en arriere)
rec.CursorType = 3
' paramétrage du type de verrou
rec.LockType = 1
Si on n'ouvre pas le curseur comme cela, recordCount génère soit une erreur, soit renvoit -1... donc tester si rec.recordCount<1 est dangereux si l'erreur n'est pas levé.

Pour compter le nombre d'enregistrements, recordCount parcourt tous les enregistrements et doit se repositionner sur le premier après.

Pour voir si l'enregistrement est vide on fait:
if (rec.EOF and rec.BOF) then...
end if
ou on teste si recordCount=0
Lassé par la pub ? Créez un compte