Ver Mensaje Individual
  #2 (permalink)  
Antiguo 04/01/2006, 09:07
Avatar de Andres95
Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 20 años, 2 meses
Puntos: 38
porque probablemente el max te devuelve un record con un cero. (que seria el valor maximo cuando no hay registros).

Si lo que requieres es solo un valor, es recomendable no utilizar un dataset (el reader) sino utilizar un parametro de tipo output en un sp.

Seria algo como :

En el SQL ....

Create procedure spGetMaxRecord
@resultado int output
AS
Set @resultado = 0
Select @resultado = MAX(NUMREGISTRO) as NUMREGISTRO from SOCIOS
Set @resultado = isnull(@resultado,0)



En el Visual Studio.
Código:
        Dim cmd As SqlCommand = New SqlCommand(spGetMaxRecord, oMaxSocios)
        cmd.Parameters.Add("@resultado", 0)
        cmd.Parameters(0).Direction = ParameterDirection.Output
        cmd.ExecuteNonQuery()

        If cmd.Parameters(0).Value = 0 Then
            MsgBox("SI")
        Else
            MsgBox("NO")
        End If
algo asi...