probleme de Select. [Rezolu] [ASP/SQL] - ASP - Programmation
Marsh Posté le 03-11-2003 à 11:14:38
message d'erreur exact?
sinon ceci me parait pas très correct:
WHERE tac_cleUnique LIKE '" & cleunique & "'"
pourquoi un like? si c'est une clé primaire, utilise plutot le "="
Marsh Posté le 03-11-2003 à 11:16:33
parce que si je met =, ca passe pas :
Type d'erreur :
ADODB.Recordset (0x800A0CC1)
Impossible de trouver l'objet dans la collection correspondant au nom ou à la référence ordinale demandé.
/getsi.asp, line 71
Marsh Posté le 03-11-2003 à 11:17:08
et puis je précise que avec LIKE, je n ai AUCUN message d'erreur
Marsh Posté le 03-11-2003 à 11:20:03
essaye un RSTac.MoveFirst avant ton do while
ensuite, ta variable cleunique est-elle un nombre? si c'est le cas il faut enlever les quotes dans ta requête (sinon il va prendre ca comme caractère)
Marsh Posté le 03-11-2003 à 11:23:37
ben si je met ton RSTac.MoveFirst, ca me fait une erreur :
Type d'erreur :
ADODB.Recordset (0x800A0BCD)
BOF ou EOF est égal à True ou l'enregistrement actuel a été supprimé. L'opération demandée nécessite un enregistrement actuel.
/getsi.asp, line 67
et puis ma cleunique est comme ca : {17C9A8CF-BE05-404B-A05D-FA8AB2817C1A} et si j enleve les quotes, ca fait une erreur :
Type d'erreur :
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver]Erreur de syntaxe ou violation d'accès
/getsi.asp, line 66
Marsh Posté le 03-11-2003 à 11:25:41
la première erreur signifie qu'il n'a rien trouvé, donc on peut supposer que c'est ton like qui fait foirer
as-tu essayé d'enlever les quote et de mettre = ?
Marsh Posté le 03-11-2003 à 11:36:34
ben ca marche pas, ca me fait une erreur de syntaxe :
Type d'erreur :
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver]Erreur de syntaxe ou violation d'accès
/getsi.asp, line 66
Je précise que je suis sur que la cleunique existe car j ai fait un response.write(cleunique) qque part histoire d en etre sur.
Marsh Posté le 03-11-2003 à 11:38:51
Citation : |
c'est bien ceci qui te fait l'erreur?
Marsh Posté le 03-11-2003 à 11:39:21
ma string de requete donne ca :
SELECT tac_dateDemande, tac_datePrevue, tac_dateMiseAJour, tac_agence, tac_objet, tac_actionEnCours, tac_intervenantPrevu, tac_dernierIntervenant, tac_etat, tac_typeAction FROM inf_taches WHERE tac_cleUnique LIKE '{17C9A8CF-BE05-404B-A05D-FA8AB2817C1A}'
et tu es sur ke le probleme vient de la ?
Marsh Posté le 03-11-2003 à 11:40:25
Urd-sama a écrit :
|
oui :
Type d'erreur :
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver]Erreur de syntaxe ou violation d'accès
Marsh Posté le 03-11-2003 à 11:42:22
ah ok, ta cleunique c'est donc ca: {17C9A8CF-BE05-404B-A05D-FA8AB2817C1A}
mets plutot: where tac_cleUnique = '" & cleunique & "'"
et vérifie que la clé est exactement écrit pareille dans la base
Marsh Posté le 03-11-2003 à 11:46:25
ben la, j ai carrément écrit en dur toute la requete :
SQL="SELECT tac_dateDemande, tac_datePrevue, tac_dateMiseAJour, tac_agence, tac_objet, tac_actionEnCours, tac_intervenantPrevu, tac_dernierIntervenant, tac_etat, tac_typeAction FROM inf_taches WHERE tac_cleUnique={17C9A8CF-BE05-404B-A05D-FA8AB2817C1A}"
et ca me fait
Type d'erreur :
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver]Erreur de syntaxe ou violation d'accès
Marsh Posté le 03-11-2003 à 11:48:21
heu en fait, la, visiblement, on a fait toutes les syntaxes pour cette requete mais peut etre que l'erreur vient d autre part non ? (enfin moi je dis ca mais je ne sais pas)
Marsh Posté le 03-11-2003 à 11:49:11
Urd-sama a écrit : rajoute les ' |
ben cé pas mieux :-/
Type d'erreur :
ADODB.Recordset (0x800A0CC1)
Impossible de trouver l'objet dans la collection correspondant au nom ou à la référence ordinale demandé.
Marsh Posté le 03-11-2003 à 11:50:00
Impossible de trouver l'objet dans la collection correspondant au nom ou à la référence ordinale demandé.
cette erreur signifie qu'il ne trouve pas un des champs que tu as précisé dans le select
controle qu'ils sont tous écrit correctement
Marsh Posté le 03-11-2003 à 11:53:49
ben que te dire de plus : tout marche, je t aime !!! (excuse moi pour cette replique mais ca venait du fond du coeur).
Marsh Posté le 03-11-2003 à 11:56:44
l'erreur était bien un des champs mal écrit?
tant mieux si l'erreur est résolue
vais aller miamer l'esprit tranquille
Marsh Posté le 03-11-2003 à 11:13:14
Bonjour, voila mon probleme : j'ai une base ds laquelle il y a les entrées qu il faut (je suis sur de l'integrité et des données dans la base). Quand je lance le code suivant (en ASP et la connexion se fait a SQL Server) et bien il ne trouve pas l'entrée demandée dans la requete SQL.
(Il n'y a qu une seule entrée qui corresponde a ma requete.)
Je précise que je n'ai aucune erreur de la part d'internet explorer. Si vous aviez une idée ...
le code :
________________________________________________________________
Set ConnTac = Server.CreateObject("ADODB.Connection" )
ConnTac.Open "driver={SQL Server};" & " server=(local); uid=sa; pwd=toto; database=GETSI"
Set RSTac = server.createobject("ADODB.Recordset" )
SQL="SELECT tac_dateDemande, tac_datePrevue, tac_dateMiseAJour, tac_agence, tac_objet, tac_actionEnCours, tac_intervenantPrevu, tac_dernierIntervenant, tac_etat, tac_typeAction FROM inf_taches WHERE tac_cleUnique LIKE '" & cleunique & "'"
response.write( "SQL :" & SQL & "<br>" )
RSTac.Open SQL,ConnTac , 0, 1
do while not RSTac.eof
datedemande = RSTac("tac_dateDemande" )
dateprevue = RSTac("tac_datePrevue" )
datemiseajour = RSTac("tac_dateMiseAJour" )
daterealise = RSTac("tac_dateRealise" )
tempspasse = RSTac("tac_tempsPasse" )
agence = RSTac("tac_agence" )
objet = RSTac("tac_objet" )
actioneneours = RSTac("tac_actionEnCours" )
intervenantprevu = RSTac("tac_intervenantPrevu" )
dernierintervenant = RSTac("tac_dernierIntervenant" )
var_etat = RSTac("tac_etat" )
var_typeAction = RSTac("tac_typeAction" )
cleunique = RSTac("tac_cleUnique" )
RSTac.MOVENEXT
loop
________________________________________________________________
Message édité par TheTooN le 03-11-2003 à 11:54:18