Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Bases de Datos General (http://www.forosdelweb.com/f21/)
-   -   RecordCount en MySQL ¿Existe? (http://www.forosdelweb.com/f21/recordcount-mysql-existe-113009/)

Pipumpam 24/01/2003 09:00

RecordCount en MySQL ¿Existe?
 
Hola a todos.

Tengo el siguiente código:
....
....
cn.open ...
....
....
Set MiRecordset = Server.CreateObject("ADODB.Recordset")

querystr = "select * from MisDatos;"

MiRecordset.ActiveConnection = cn
MiRecordset.CursorType = adOpenKeyset
MiRecordset.LockType = adLockOptimistic
MiRecordset.Source = querystr
MiRecordset.Open

TotalReg = MiRecordset.RecordCount


Cuando lo uso con MS SQL Server obtengo en la variable "TotalReg" el numero de registros que contiene la tabla "MisDatos", pero si utilizo ese mismo código con MySQL no me da ese resultado esperado y en su lugar, me devuelve en "TotalReg" un valor de -1.

¿Alguien sabe cuál es el equivalente de .RecordCount al trabajar con MySQL ?

Necesito saber cuantos registros tiene la tabla "MisDatos" antes de realizar alguna transacción sobre ella ... ese es el tema.

Gracias.

Cain 24/01/2003 09:02

SELECT Count(*) FROM tabla

Pipumpam 24/01/2003 10:28

RecordCount en MySQL ¿Existe?
 
Gracias amigo Cain, pero he revisado la literatura que dispongo y no encuentro cómo se debe utilizar "SELECT Count(*) FROM tabla" ...

¿Estás en condiciones de extender un poquito más tu propuesta?
¿Cómo recuperas ese valor al utilizar esta variante del SELECT?


Aún así, yo sigo manteniendo mi interrogante ... ¿Existe un equivalente de .RecodrCount para MySQL? ¿Alguna otra persona sabrá de esto?


Se cómo hacerlo en MS SQL Server pero no así en MySQL.

Saludos y gracias.

Cain 24/01/2003 10:54

Si ejecutas:
MySQL> SELECT Count(*) FROM tabla

Te devolverá el número de registros existentes en la tabla.

Por otro lado, MySQL devuelve siempre su affectedRows (equilavente al RecordCount), pero no sé como recuperarlo sin usar un lenguaje como PHP o Cold Fusion :borracho:

Pipumpam 24/01/2003 11:04

RecordCount en MySQL ¿Existe?
 
Gracias Cain, pero debo preguntarte otra cosa:

Yo estoy en ASP y cuando tu expresas MySQL> SELECT Count(*) FROM tabla, ¿dónde estás tu? ¿en PhP? ... ¿o en ASP? ... ¿?¿?

Te lo pregunto por lo de ">", pues en ASP eso me suana a "mayor que" y yo ando buscando algo que diga "igual a", es decir "=".

¿Te quedó claro?


Saludos.

Cain 24/01/2003 11:50

Teniendo en cuenta que estamos en el foro de Bases de Datos (no en el de ASP), daba por supuesto que estábamos en la consola MySQL, o en un Front-End.

Lo que he puesto es la consulta SQL que mando a MySQL para que me devuelva el total de registros de la tabla llamada tabla.

luigivirgo 24/01/2003 12:21

kreo ke esto kontesta a tu pregunta
 
el objeto
Set MiRecordset = Server.CreateObject("ADODB.Recordset")

querystr = "select * from MisDatos;"

MiRecordset.ActiveConnection = cn
MiRecordset.CursorType = adOpenKeyset
MiRecordset.LockType = adLockOptimistic
MiRecordset.Source = querystr
MiRecordset.Open

TotalReg = MiRecordset.RecordCount


todo esto es Propio De ASP no de algun manejador de bases de datos

si te regresa -1 algo esta mal en tu query o e tu konexion a mysql

no esproblema de base de datos sino de ASP

kuando veas la korrecxion de tu select o de tu base de datos veras ke este objeto se komporta = para todo tipo de bases de datos

Pipumpam 24/01/2003 13:16

Hola amigo luigivirgo,

Lo que tu planteas puede parecer bastante lógico, pero te cuento que sin cambiar nada en ese código, el mismo me funciona perfectamente bien contra MS SQL Server, más no así con MySQL.

¿Que opinarías al respecto? :pensando:

Saludos.

luigivirgo 24/01/2003 13:18

verifikaste bien la konexion a mysql?
 
a lo mejor no se esta konektando al mysql

tienes alguna forma de probar ke realmente se konekto a mysql?

Pipumpam 24/01/2003 13:34

RecordCount en MySQL ¿Existe?
 
Si la tengo, efectivamente, no da ningún error y siempre me trae el primer registro, del cual puedo mostrar todos sus campos como si no estuviera pasando nada. Repito, lo único que funciona mal es que con MySQL el valor en .RecordCount siempre tiene un -1.

¿Qué opinas?


Saludos.

luigivirgo 24/01/2003 13:49

en tu konfiguracion de dsn
 
a lo mejor en dsn esta algo mal pk se me hace algo muy raro


La zona horaria es GMT -6. Ahora son las 10:14.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.