Visual Basic - no funciona select count

Life is soft - evento anual de software empresarial
 
Vista:

no funciona select count

Publicado por sandra (8 intervenciones) el 05/07/2006 09:44:50
Hola a todos, hace unos dias mi problema era saber cuando una consulta esta vacia... y mirando los temas relacionados lo pude solucionar, ahora mi problema es el siguiente
no me funciona el recordset ni el select count(*) as total from xxxx
declaro mi recordset

Dim RS2 As ADODB.Recordset

y tengo esta funcion
Public Sub EstablecerRS(ByRef rec As ADODB.Recordset, SQL As String)
On Error GoTo AdoErrorLite
Set rec = New ADODB.Recordset
Set rec = conexion.Execute(SQL)
Exit Sub
AdoErrorLite:
Set rec = Nothing
End Sub

cuando la implemento:
EstablecerRS RS2, "select count(*) as total from xxx where x.y=a and x.z=b
MsgBox (total & "reg")

Me pone por pantalla 0 reg
con poner el cursor del lado del cliente antes de abrir el recordset no funciona lo del recordcount, por esto he optado por el select count, pero tampoco funciona???????????
alguien me puede orientar donde esta mi error... en la declaracion, en la funcion???
la base de datos es mysql y me conecto por odbc
De antemano muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:no funciona select count

Publicado por Antonio (10 intervenciones) el 05/07/2006 10:34:56
Si al recordset le pones la propiedad CursorType como AdOpenKeySet o AdOpenStatic, la propiedad RecordCount siempre da el número de registros (si está vacio dará cero).
Sal2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:no funciona select count

Publicado por sandra (8 intervenciones) el 05/07/2006 11:50:58
Hola antonio, nose q pasa, al poner la propiedad del cursorType antes de abrir el recordset, no hace nada....

Private Sub Escribe_CF(RS1 As ADODB.Recordset, TIPO As Integer)
Dim RS3 As ADODB.Recordset
dim total as integer


RS3.cursortype = adOpenKeyset


MsgBox ("entra")
EstablecerRS RS3, "select count(*) as total from xxx where x.y=a and x.z='p'"
MsgBox ("haceconsulta")
MsgBox (total & "reg")
MsgBox (RS3.RecordCount)
Por pantalla ni siquiera me muestra el mensaje entra...

porq????????????????????????????????????????

gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:no funciona select count

Publicado por sandra (8 intervenciones) el 05/07/2006 12:45:22
vaya pues ya estaaaaaaaaaaaaaaaa
un error super obvio .... pero en fin hasta q no le das mil vueltas y no te fijas,,,,,,

lo del recordcount no va sigue saliendo -1 pero lo del select count (*) as nombredelcampo q quieres from tabla...
funciona sin problemassssssss

graciassssssssssssss
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar