Rendimiento lento en controlador de ODBC de VFP con SET DELETED ON

Seleccione idioma Seleccione idioma
Id. de artículo: 216408 - 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

Síntomas

Las consultas que mostrar como totalmente optimizado en Microsoft Visual FoxPro podrían ejecutar lentamente a través del controlador ODBC de Microsoft Visual FoxPro.

Causa

El valor predeterminado SET DELETED en el controlador ODBC de Visual FoxPro es "On", lo que reduce la optimización de la mayoría de las consultas. El valor predeterminado en Visual FoxPro para SET DELETED es "Off".

Solución

Una forma de establecer la propiedad eliminados a OFF a través de ODBC controlador se muestra en el código siguiente. Esta configuración es específica de la conexión:
MyConn=SQLSTRINGCONN('driver=Microsoft Visual FoxPro Driver; ' ;
   + 'SOURCETYPE=DBC;sourcedb=c:\mydata\mydata.DBC;backgroundfetch=no')
IF myconn <= 0 THEN
   MESSAGEBOX("Connection Failed")
   AERROR(myerr)
   DISPLAY MEMORY LIKE myerr
   RETURN
ENDIF
MyRes=SQLExec(MyConn,'SET DELETED OFF')
				
aquí es un ejemplo en páginas Active Server mediante ADO:
<%@ Language=VBScript %>
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
</HEAD>
<BODY>

<%
set MyConn=server.CreateObject("adodb.connection")
myconn.ConnectionString="driver=Microsoft Visual FoxPro DRIVER; " & _
	"sourcetype=dbc;sourcedb=d:\program files\microsoft visual studio\" & _
	"msdn98\98vsa\1033\samples\vfp98\data\testdata.dbc;BACKGROUNDFETCH=NO"
MyConn.Open
MyConn.Execute "SET DELETED OFF",,ADCMDTEXT
SET MYRS=MYCONN.Execute("SELECT * FROM CUSTOMER",,ADCMDTEXT)
Response.Write(MYRS.FIELDS(1).VALUE)
SET mYRS=NOTHING
SET MYCONN=NOTHING
%>
</BODY>
</HTML>
<BR/>
				
otra forma de hacerlo consiste en configurar el DSN. El valor de DELETED está disponible en versión 6.00.8428.00 o posterior de vfpodbc.dll. Una versión del controlador que admite esta configuración puede obtenerse mediante la descarga la versión más reciente del controlador ODBC de Visual FoxPro desde el sitio Web de MSDN siguiente:
http://msdn2.microsoft.com/en-us/vfoxpro/bb190233.aspx

Estado

Este comportamiento es por diseño.

Más información

Dado que esta configuración es la contraria que la configuración de Visual FoxPro, puede crear instancias donde los registros devueltos parecen ser incorrectas.

Referencias

Para obtener más ayuda en el comando SET DELETED , busque establecer eliminados en el archivo Ayuda de Visual FoxPro ODBC. Este archivo es DRVVFP.HLP en el Windows\System o Windows\System32 directorio busca SET DELETED en la Ayuda de Visual FoxPro.

Propiedades

Id. de artículo: 216408 - Última revisión: sábado, 22 de febrero de 2014 - Versión: 4.2
La información de este artículo se refiere a:
  • Microsoft Visual FoxPro 6.0 Professional Edition sobre las siguientes plataformas
    • Microsoft Open Database Connectivity Driver for Visual FoxPro 5.0
  • Microsoft Data Access Components 2.5
  • Microsoft Data Access Components 2.6
Palabras clave: 
kbnosurvey kbarchive kbmt kbprb KB216408 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): 216408

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