Posez votre question Signaler

Curseur SQL [Résolu]

soleil_levant 384Messages postés 15 septembre 2008Date d'inscription 14 avril 2011Dernière intervention - Dernière réponse le 31 mar 2010 à 11:45
Bonjour,
Je suis entrain de faire un script avec curseur sur une base access, le script est assez simple, il vérifie avec une boucle while si le curseur_client est vrais ou pas, si oui démarre l'affichage dans la variable @nom.
mon script ne fonctionne pas et m'affiche expected 'DELETE', 'SELECT'... alors que le curseur est un select ??? Voici le code :
sql>DECLARE @nom VARCHAR(50)
DECLARE curseur_client CURSOR FOR SELECT `Nom Expediteur` FROM `Base AML`
OPEN curseur_client
FETCH curseur_client INTO @nom
WHILE @@FETCH_STATUS = 0
BEGIN
PRINT @nom
FETCH curseur_client INTO @nom
END
CLOSE curseur_client
DEALLOCATE curseur_client;
Aidez moi je vous prie, c'est urgent s'il vous plaît, dois rendre un rapport demain sur les curseurs des SGBD. Merci infiniment,
Lire la suite 

Curseur SQL »

8 réponses
Réponse
+3
moins plus
Salut,

C'est aussi simple, après avoir eu l'expérience sur les sgbdr depuis, je confirme la non existance des curseurs sous access. En tout cas pas sur le moteur jet. En revanche sous VBA, on utilisera plutot les RecordSet. C'est des curseurs particuliers mais qui répondent très bien à la demande de navigation entre enregistrements.
Gros défaut, la non stabilité! Et oui, je vous confirme le gros défaut des curseurs VBA ODBC ( DAO OU ADO) car ils ne pointent pas toujours sur le premier enregistrement. Il faut impérativement écrire explicitement le movefirst. Et autres soucis des codes VBA gourmants en ressources. A chaque fois que je code, ça marche très bien et 20% de chance de plantage à cause des fuites de mémoires causés par la mauvaise gestion de mémoire sur ces outils.

Enfin, depuis, perso j'ai évolué vers le fameux SGBDR Oracle. Et c'est vraiment très puissant et sa performance est sans équivalence.

J'espère que ma réponse apportera plus de lumières.

Merci pour vous tous, en particulier Christounet à qui je tire mon chapeau !!
Giorgiolino - 31 mar 2010 à 11:45
Bien pris note.

Merci en tout cas d'avoir apporté l'info. Comme quoi, presqu'un an après un post peut encore renaître de ses cendres. En attendant, je marque le post comme résolu.

Bonne continuation.
Ajouter un commentaire
Réponse
+1
moins plus
Bonjour, tjrs pas de rép :(
Ajouter un commentaire
Réponse
+0
moins plus
Bonsoir,

avez vs une suggestion s'il vous plaît, c'est urgent merci :(
crazy_widad - 21 nov 2009 à 00:56
ben j crois que tu devais enlever les côtes que t'as mis dans le select c tt
Ajouter un commentaire
Réponse
+0
moins plus
....
Ajouter un commentaire
Réponse
+0
moins plus
on dirait que tu as 2 declare dans ta procedure ?
le BEGIN est-il bien placé ?
Giorgiolino - 25 mar 2010 à 14:03
Vu la date du post, je doute que tu puisses avoir une réponse.
Ceci dit, ça peut être intéressant de voir si quelqu'un peut apporter une réponse
à ce problème, de manière à faire avancer la commaunauté.
Ajouter un commentaire
Ce document intitulé « curseur SQL » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook