Chercher dans une view

objectifweb Messages postés 25 Date d'inscription mardi 22 décembre 2009 Statut Membre Dernière intervention 6 janvier 2010 - 3 août 2006 à 11:07
frossfross Messages postés 1 Date d'inscription jeudi 6 avril 2006 Statut Membre Dernière intervention 5 juin 2007 - 5 juin 2007 à 09:55
Bonjour

je vis un problème de fou !
On vient de migrer une application ASP + SQl sur un serveur 2000 qui marchait bien vers un serveur avec Windows 2003 et un serveur SQl 2005

Une page affiche le résultat d'une view...

Je fais dans l'outil query de sql2005 un bête select * from maview, et le résultat est ok, mes 4 enregistrements s'affichent

Par contre en asp, c'est totalement débile, rien ne s'affiche, pas d'enregistrement trouvés, le EOF et le BOF sont True, ce qui signifie, je trouve rien (c'est faux en plus) et par contre le recordcount est de 4 (ca c'est juste) mais si le résultat est 4 pourquoi positionne t'il BOF et EOF à True !!??

J'ai essayé plusieurs chaînes de connexion et selon celle que j'utilise, j'ai toujours BOF et EOF True mais le recorcount est de 0 ou 4

Vous avez déjà vu cela ??

Amicalement
Patrci

5 réponses

cs_poppyto Messages postés 540 Date d'inscription dimanche 29 décembre 2002 Statut Modérateur Dernière intervention 13 mai 2011
4 août 2006 à 11:17
0
objectifweb Messages postés 25 Date d'inscription mardi 22 décembre 2009 Statut Membre Dernière intervention 6 janvier 2010
4 août 2006 à 11:25
Bonjour,

Je sais pas ce que c'est "le mode d'isolation IIS 5" mais j'ai fini par trouver la cause ...

Lorsque je tape ma requête dans le query analyser de sql, le résultat s'affiche bien mais une fois mon mon code ASP cela ne marchait pas, il trouve le nombre d'enregistrements, mais les curseurs sont positionnés en dehors du recordset...
J'ai observé également que certaines vues fonctionnent sans problèmes ...
J'ai réécris ma vue en utilisant la nouvelle version sql, rien ne change
Finalement j'ai enlevé une par une mes jointures et là la query donne des résultats !
Je fais donc une jointure entre plusieurs tables, en précisant d'afficher tous les éléments de la table principale même si aucun enregistrement n'est commun aux deux tables, c'est cela qui ne marche pas ! Il ne tient pas compte de cela et si aucun enregistrement n'est commun, l'asp ne donne pas le recordset !

Patrick
0
cs_poppyto Messages postés 540 Date d'inscription dimanche 29 décembre 2002 Statut Modérateur Dernière intervention 13 mai 2011
4 août 2006 à 14:00
0
objectifweb Messages postés 25 Date d'inscription mardi 22 décembre 2009 Statut Membre Dernière intervention 6 janvier 2010
4 août 2006 à 14:04
Oui probablement mais pourquoi tout cela tournait bien sous sql2000 avec un serveur windows2000 et maintenant on tourne sur un windows2003 et sql2005 ...

Merci des tes propositions
Patrick
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
frossfross Messages postés 1 Date d'inscription jeudi 6 avril 2006 Statut Membre Dernière intervention 5 juin 2007
5 juin 2007 à 09:55
Salut, moi j'ai le même problème mais sans jointures :

rechercheIdentification = "SELECT * FROM table where username='"& login &"' and pass='"& password &"'"
 set rs=connectionToDatabase.execute(rechercheIdentification)

Plus loin je fait :

maVar = rs.fields(5)
response.write(maVar)

langageUsers = "SELECT reference,nom FROM table WHERE reference="& rs.fields(5) &";"
set langage = connectionToDatabase.execute(langageUsers)

le response.write retourne bien quelque chose, mais ensuite le rs.fields(5) se vide
la commande "langageUsers" retourne  SELECT reference,nom FROM table WHERE reference=

Si je passe par des var intermédiaire :

rs1 = rs.fields(1)
rs2 = rs.fields(2)
langageUsers = "SELECT reference,nom FROM PGM_langage WHERE reference="& rs1 &";"

set langage = connectionToDatabase.execute(langageUsers)

la ca marche 
fait ... de voir ca en fin de projet.
Si vous avez une idée comment régler slqserveur 2005.

Merci d'avance
0
Rejoignez-nous