Récupérer la valeur d'un SELECT COUNT(*) ?

[Résolu]
Signaler
Messages postés
30
Date d'inscription
lundi 30 mai 2005
Statut
Membre
Dernière intervention
28 septembre 2005
-
Messages postés
30
Date d'inscription
lundi 30 mai 2005
Statut
Membre
Dernière intervention
28 septembre 2005
-
Salut à tous,

Petite question toute bête : J'ai une requête de type select count (*) qui me compte mon nombre d'enregistrement dans une page ASPX.VB
Je vous savoir comment je peux récupérer la valeur dans une variable pour ensuite faire un IF et afficher des choses suivant si j'ai des enregistrements ou non.

Ma requete est déclarer en :

Dim SelectCmd As String
Dim mConn As New SqlClient.SqlConnection

SelectCmd = "SELECT COUNT ....."
mConn.ConnectionString = ConnString

Dim mAdap As New SqlClient.SqlDataAdapter(SelectCmd, ConnString)
Dim mDS As New DataSet
mAdap.Fill(mDS)

5 réponses

Messages postés
30
Date d'inscription
lundi 30 mai 2005
Statut
Membre
Dernière intervention
28 septembre 2005

Bon en effet j'avais pas fait gaffe, mais après j'avais une petite embrouille sur la connexion ; il ne voulait pas me l'etablir.
Alors en regardant à ta fonction dans la MSDN je suis tombé sur un truc qui marche. Voici le code pour ce que ca interesse :

mConn.ConnectionString = ConnString
Dim SelectCmd1
As
String = "SELECT COUNT(*) ...."

Dim result
As
Integer
Dim myCommand
As
New SqlClient.SqlCommand(SelectCmd1, mConn)
myCommand.Connection.Open()
result = myCommand.ExecuteScalar()
mConn.Close()

Je fais ensuite un if (result = 0) then ....
Et ca marche niquel.

Bon codage.
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
29
Dim SelectCmd As String
Dim mConn As New SqlClient.SqlConnection

SelectCmd = "SELECT COUNT ....."
mConn.ConnectionString = ConnString

mConn.open()

dim result as integer = selectCmd.executescalar();

mConn.close()
mConn.dispose()

<hr> Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
29
oups j'ai dit une betise :$

Dim SelectCmd As new SqlClient.SqlCommand( "SELECT COUNT .....")
Dim mConn As New SqlClient.SqlConnection(ConnString)

try
mConn.open()
dim result as integer = selectCmd.executescalar();
finally
if mConn.state = open then ' un truc comme ca
mConn.close()
end if
mconn.dispose()
end try
<hr> Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
Messages postés
30
Date d'inscription
lundi 30 mai 2005
Statut
Membre
Dernière intervention
28 septembre 2005

Alors j'ai tapé ton code et il en ressort ceci :

Dim mConn As New SqlClient.SqlConnection
Dim SelectCmd1 As String
SelectCmd1 = "SELECT COUNT(*) ....."


Try
mConn.Open( )
Dim result As Integer = SelectCmd1. ?????
Finally
If mConn.State = ConnectionState.Open Then
mConn.Close( )
End If
mConn.Dispose( )
End Try

La commande executescalar n'est pas connue. Quand je tape SelectCmd1 et quand je mets le point, un menu deroulant me propose tout une liste de fonctions mais je ne vois pas d'équivalent à celle-ci, ...

Quelqu'un a la réponse ?
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
29
vivi mais regarde mon deuxieme exemple : selectcmd n'est pas un string :)


<HR>
Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr