La función del campo de cuenta de SQL SELECT omite el comando SET DELETED ON en Visual FoxPro 5.0

Seleccione idioma Seleccione idioma
Id. de artículo: 166137 - Ver los productos a los que se aplica este artículo
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Expandir todo | Contraer todo

En esta página

Síntomas

En Microsoft Visual FoxPro 5.0, función de campo de cuenta de SQL theSELECT no funciona correctamente cuando SET DELETED es ON. Devuelve el recuento de todos los registros, incluyendo los registros eliminados en lugar de sólo los registros no eliminado. Sin embargo, la función del campo de cuenta de SQL SELECT funciona correctamente en Visual FoxPro 3.x.

Solución

Utilice uno de los siguientes comandos:
  • SELECT COUNT(*) FROM <table name> WHERE !DELETED()				
  • COUNT TO <memvar>				
Sin embargo, si se utilizando la cuenta a <memvar>, mueve el puntero de registro mientras mediante la instrucción SELECT de SQL no.

Estado

Este problema no ocurre en Visual FoxPro 6.0 y versiones posteriores.

Más información

Pasos para reproducir el comportamiento

Ejecute el siguiente código en un archivo de programa.
   CLEAR
   SET DELETED ON
   CREATE CURSOR Test ( cTest C(10))
   INSERT INTO Test VALUES ( "One")
   INSERT INTO Test VALUES ( "Two")
   DELETE

   LOCAL aRet[1]
   SELECT COUNT(*) FROM Test INTO ARRAY aRet
   ?aRet[1]       && Incorrectly returns 2

   SELECT COUNT(cTest) FROM Test INTO ARRAY aRet
   ?aRet[1]       && Incorrectly returns 2

   SELECT cTest FROM Test INTO CURSOR Temp
   ?_TALLY        && Incorrectly returns 2

   SELECT COUNT(cTest) FROM Test WHERE !DELETED() INTO CURSOR Temp
   ?_TALLY        && Correctly returns 1

   COUNT TO aRet
   ?aRet          && Correctly returns 1

   CLOSE ALL
				

Propiedades

Id. de artículo: 166137 - Última revisión: sábado, 22 de febrero de 2014 - Versión: 2.1
La información de este artículo se refiere a:
  • Microsoft Visual FoxPro 5.0 Standard Edition
  • Microsoft Visual FoxPro 5.0a
Palabras clave: 
kbnosurvey kbarchive kbmt kbprb KB166137 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 166137

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com