Précédent   Forum des professionnels en informatique > Bases de données > MS SQL-Server > Développement
Développement Forum d'entraide sur le Transact-SQL, le CLR, les procédures stockées, les triggers, les requêtes SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/09/2008, 14h46   #1
Candidat au titre de Membre du Club
 
Inscription : avril 2008
Messages : 60
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 60
Points : 11
Points : 11
Par défaut Compter les lignes d'un SELECT

Bonjour

Existe-il un moyen de renvoyer le nombre de lignes d'un SELECT dans une procédure stockée (Sous forme de paramètre OUTPOUT par exemple).

Merci d'avance

Herve Aouate
rvaouate est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2008, 16h50   #2
Membre chevronné
 
Avatar de cavo789
 
Homme Christophe Avonture
Développeur Web
Inscription : mai 2004
Messages : 649
Détails du profil
Informations personnelles :
Nom : Homme Christophe Avonture
Âge : 37
Localisation : Belgique

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mai 2004
Messages : 649
Points : 774
Points : 774
SELECT Count(*) ... et tu renvoies ce chiffre comme OUTPUT de ta usp.
__________________
Christophe
Développeur de l'extension AllEvents, gestionnaire d'évènements pour Joomla
http://avonture.be/allevents - https://www.facebook.com/com.allevents - http://twitter.com/#!/avonture
cavo789 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2008, 10h25   #3
Candidat au titre de Membre du Club
 
Inscription : avril 2008
Messages : 60
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 60
Points : 11
Points : 11
Merci Christophe.
Le problème est qu'utiliser cette syntaxe m'oblige à exécuter deux fois le SELECT.
Une fois pour les données et une fois pour le COUNT car il semble que le COUNT(*) ne puisse pas être ajouté à d'autres données dans un même SELECT.
rvaouate est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2008, 11h23   #4
Membre chevronné
 
Avatar de cavo789
 
Homme Christophe Avonture
Développeur Web
Inscription : mai 2004
Messages : 649
Détails du profil
Informations personnelles :
Nom : Homme Christophe Avonture
Âge : 37
Localisation : Belgique

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mai 2004
Messages : 649
Points : 774
Points : 774
Absolument. Soit ta sp retourne un dataset soit un paramètre en output.

Comment fais-tu usage de ta SP ? Si tu programmes en VB p.e. et que tu initialises un recordset avec ta SP, alors il suffit de faire appel à la propriété .RecordCount du recordset pour ne pas à avoir à réexécuter le code... Trop simple je présume
__________________
Christophe
Développeur de l'extension AllEvents, gestionnaire d'évènements pour Joomla
http://avonture.be/allevents - https://www.facebook.com/com.allevents - http://twitter.com/#!/avonture
cavo789 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/09/2008, 11h48   #5
Rédacteur/Modérateur

 
Avatar de SQLpro
 
Homme Frédéric BROUARD
Expert SGBDR & SQL
Inscription : mai 2002
Messages : 10 959
Détails du profil
Informations personnelles :
Nom : Homme Frédéric BROUARD
Localisation : France

Informations professionnelles :
Activité : Expert SGBDR & SQL
Secteur : Conseil

Informations forums :
Inscription : mai 2002
Messages : 10 959
Points : 17 793
Points : 17 793
@@ROWCOUNT vous fournit cette information : nombre de ligne de la dernière requête.

A +
__________________
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
* * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *
SQLpro est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2008, 13h31   #6
Candidat au titre de Membre du Club
 
Inscription : avril 2008
Messages : 60
Détails du profil
Informations forums :
Inscription : avril 2008
Messages : 60
Points : 11
Points : 11
Merci à tous

Le @@ROWCOUNT est parfait. SQLpro porte bien son pseudo.

Pour le dernier message de cavo789, j'utilise ADO avec un objet command qui me renvoie un recordset. Et ce recordset ne supporte pas le recordcount.
Dommage car c'était effectivement très simple.
rvaouate est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/09/2008, 13h52   #7
Rédactrice
 
Avatar de Fleur-Anne.Blain
 
Inscription : juillet 2006
Messages : 2 662
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 2 662
Points : 5 590
Points : 5 590
N'oublie pas le tag en bas si ton problème est réglé merci
__________________
la culture c'est comme la confiture moins on en a plus on l'étale.

Vous souhaitez contribuer aux rubriques Solutions d'entreprises ou BI, contactez-moi

Mes tutos
Fleur-Anne.Blain est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h30.


 
 
 
 
Partenaires

Hébergement Web