In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

MySql server has gone away

Foro de Xailer profesional en español
Responder
Martin Del Angel
Mensajes: 360
Registrado: Mié Dic 03, 2008 5:05 am

MySql server has gone away

Mensaje por Martin Del Angel »

Error cuando Utilizo Update() despues de AddNew() o Edit() en un
TSqlQuery() conectado a una Base de datos MySql en un servidor remoto de
WebHosting donde tengo mi Pagina Web.
Tengo perfectamente configurado Usuario,Password,Base de datos , nombre
del servidor.
Con SqlYog no tengo ningun problema , puedo crear tablas, insertar
registros , editar y eliminar sin nigun problema. Ya que utiliza el
query de la forma STRSQL_REMOTO
STRSQL_LOCAL:="INSERT INTO LICENCIAS (RFC,CLIENTE)
VALUES('AESR680609B10','RENE DEL ANGEL')"
STRSQL_REMOTO:="INSERT INTO `LICENCIAS` (`RFC`,`CLIENTE`)
VALUES('AESR680609B10','RENE DEL ANGEL')"
STRSQL:=STRSQL_REMOTO
IF !AppData:BD:Execute(StrSql)
MSGSTOP('Al Agregar Movimientos en Base de Datos','Error')
RETURN NIL
ELSE
MSGINFO('Agregado con exito')
ENDIF
Funciona perfectamente cuando utilizo el STRSQL_REMOTO
Pero la sintaxis es diferente a como usualmente es:
STRSQL_LOCAL:="INSERT INTO LICENCIAS (RFC,CLIENTE)
VALUES('AESR680609B10','RENE DEL ANGEL')"
CUANDO ES UN SERVIDOR REMOTO Y UTILIZLO STRSQL_LOCAL ME SALE EL ERROR
"MySql server has gone away" , pero cuando utilizo SRTSQL_REMOTO
FUNCIONA BIEN.
POR OTRO LADO CUANDO UTILZO UN SERVIDOR LOCAL , NO TENGO NINGUN PROBLEMA
CON LOS DATACONTROLS DE XAILER.
ALGUIIEN HA TRABAJADO CON SERVIDORES REMOTOS , HA TENIDO ESTOS PROBLEMAS?
Ayuda Please!
Saludos...
xAvi
Mensajes: 108
Registrado: Mar Abr 08, 2008 6:12 pm

MySql server has gone away

Mensaje por xAvi »

Martin,
El servidor debe tener configurado "Max. packet size" relativamente bajo lo cual es normal.-
SELECT * FROM LICENCIAS; ==> MySql server has gone away
SELECT * FROM LICENCIAS LIMIT 25; ==> OK
SELECT * FROM LICENCIAS LIMIT 25,25; ==> OK
SELECT * FROM LICENCIAS LIMIT 50,25; ==> OK
SELECT * FROM LICENCIAS LIMIT 25,25; ==> OK
IMHO: En MySQL hay que pensar de manera diferente, las tablas no se abren ni se cierran, lo más parecido a USE y CLOSE para mi
serí­a "START TRANSACTION" y "COMMIT".
Mi consejo es que, ... para este caso :) ... , no utilices los "DATACONTROLS". Utiliza los otros controles gestionando tu los
datos y atacando al maravilloso método "TMySQLDataSource:Execute()" que te facilita Xailer.
Un saludo
Xavi
Martin Del Angel escribió:
> Error cuando Utilizo Update() despues de AddNew() o Edit() en un
> TSqlQuery() conectado a una Base de datos MySql en un servidor remoto de
> WebHosting donde tengo mi Pagina Web.
>
> Tengo perfectamente configurado Usuario,Password,Base de datos , nombre
> del servidor.
>
> Con SqlYog no tengo ningun problema , puedo crear tablas, insertar
> registros , editar y eliminar sin nigun problema. Ya que utiliza el
> query de la forma STRSQL_REMOTO
>
> STRSQL_LOCAL:="INSERT INTO LICENCIAS (RFC,CLIENTE)
> VALUES('AESR680609B10','RENE DEL ANGEL')"
>
> STRSQL_REMOTO:="INSERT INTO `LICENCIAS` (`RFC`,`CLIENTE`)
> VALUES('AESR680609B10','RENE DEL ANGEL')"
>
> STRSQL:=STRSQL_REMOTO
>
> IF !AppData:BD:Execute(StrSql)
> MSGSTOP('Al Agregar Movimientos en Base de Datos','Error')
> RETURN NIL
> ELSE
> MSGINFO('Agregado con exito')
> ENDIF
>
> Funciona perfectamente cuando utilizo el STRSQL_REMOTO
>
> Pero la sintaxis es diferente a como usualmente es:
> STRSQL_LOCAL:="INSERT INTO LICENCIAS (RFC,CLIENTE)
> VALUES('AESR680609B10','RENE DEL ANGEL')"
>
>
> CUANDO ES UN SERVIDOR REMOTO Y UTILIZLO STRSQL_LOCAL ME SALE EL ERROR
> "MySql server has gone away" , pero cuando utilizo SRTSQL_REMOTO
> FUNCIONA BIEN.
>
> POR OTRO LADO CUANDO UTILZO UN SERVIDOR LOCAL , NO TENGO NINGUN PROBLEMA
> CON LOS DATACONTROLS DE XAILER.
>
>
> ALGUIIEN HA TRABAJADO CON SERVIDORES REMOTOS , HA TENIDO ESTOS PROBLEMAS?
>
> Ayuda Please!
>
>
>
> Saludos...
Martin Del Angel
Mensajes: 360
Registrado: Mié Dic 03, 2008 5:05 am

MySql server has gone away

Mensaje por Martin Del Angel »

Gracias xAvi por tu respuesta.
Pero insisto
Con esto funciona : (Sintaxis Comillas en Nombre de Tabla y Campos
y deben de ser esas comillas
SELECT * FROM LICENCIAS LIMIT 0,50
IF !AppData:BD:Execute("INSERT INTO `LICENCIAS` (`RFC`,`CLIENTE`)
VALUES('AESR680609B10','RENE DEL ANGEL')")
MSGSTOP('Al Agregar Movimientos en Base de Datos','Error')
RETURN NIL
ELSE
MSGINFO('Agregado con exito')
ENDIF
Con esto NO funciona : (Sintaxis Tradicional)
La Tabala y los campos estan sin esas comillas
SELECT * FROM LICENCIAS LIMIT 0,50
IF !AppData:BD:Execute("INSERT INTO LICENCIAS (RFC,CLIENTE)
VALUES('AESR680609B10','RENE DEL ANGEL')")
MSGSTOP('Al Agregar Movimientos en Base de Datos','Error')
RETURN NIL
ELSE
MSGINFO('Agregado con exito')
ENDIF
Ves la diferencia: Las comillas entre el nombre de la Tabla y en los
nombres de los campos. Porque esa sintaxis y no seguir la tradicional
que es con la que no funciona.
Si el servidor fuera Local , como ya hice pruebas , funciona con la
Sintaxis tradicional y por supuesto tambien con los DataControls
Me gustaria que hicieran pruebas para que vean el error:
Ahi esta el ejemplo Nombre de la Base de Datos,Usuario y
Password,Nombre de Servidor para que se conecten
Un saludo xAvi....
xAvi escribió:
> Martin,
>
> El servidor debe tener configurado "Max. packet size" relativamente bajo
> lo cual es normal.-
>
> SELECT * FROM LICENCIAS; ==> MySql server has gone away
>
> SELECT * FROM LICENCIAS LIMIT 25; ==> OK
> SELECT * FROM LICENCIAS LIMIT 25,25; ==> OK
> SELECT * FROM LICENCIAS LIMIT 50,25; ==> OK
> SELECT * FROM LICENCIAS LIMIT 25,25; ==> OK
>
> IMHO: En MySQL hay que pensar de manera diferente, las tablas no se
> abren ni se cierran, lo más parecido a USE y CLOSE para mi
> serí­a "START TRANSACTION" y "COMMIT".
>
> Mi consejo es que, ... para este caso :) ... , no utilices los
> "DATACONTROLS". Utiliza los otros controles gestionando tu los
> datos y atacando al maravilloso método "TMySQLDataSource:Execute()" que
> te facilita Xailer.
>
> Un saludo
> Xavi
>
> Martin Del Angel escribió:
>> Error cuando Utilizo Update() despues de AddNew() o Edit() en un
>> TSqlQuery() conectado a una Base de datos MySql en un servidor remoto
>> de WebHosting donde tengo mi Pagina Web.
>>
>> Tengo perfectamente configurado Usuario,Password,Base de datos ,
>> nombre del servidor.
>>
>> Con SqlYog no tengo ningun problema , puedo crear tablas, insertar
>> registros , editar y eliminar sin nigun problema. Ya que utiliza el
>> query de la forma STRSQL_REMOTO
>>
>> STRSQL_LOCAL:="INSERT INTO LICENCIAS (RFC,CLIENTE)
>> VALUES('AESR680609B10','RENE DEL ANGEL')"
>>
>> STRSQL_REMOTO:="INSERT INTO `LICENCIAS` (`RFC`,`CLIENTE`)
>> VALUES('AESR680609B10','RENE DEL ANGEL')"
>>
>> STRSQL:=STRSQL_REMOTO
>>
>> IF !AppData:BD:Execute(StrSql)
>> MSGSTOP('Al Agregar Movimientos en Base de Datos','Error')
>> RETURN NIL
>> ELSE
>> MSGINFO('Agregado con exito')
>> ENDIF
>>
>> Funciona perfectamente cuando utilizo el STRSQL_REMOTO
>>
>> Pero la sintaxis es diferente a como usualmente es:
>> STRSQL_LOCAL:="INSERT INTO LICENCIAS (RFC,CLIENTE)
>> VALUES('AESR680609B10','RENE DEL ANGEL')"
>>
>>
>> CUANDO ES UN SERVIDOR REMOTO Y UTILIZLO STRSQL_LOCAL ME SALE EL ERROR
>> "MySql server has gone away" , pero cuando utilizo SRTSQL_REMOTO
>> FUNCIONA BIEN.
>>
>> POR OTRO LADO CUANDO UTILZO UN SERVIDOR LOCAL , NO TENGO NINGUN
>> PROBLEMA CON LOS DATACONTROLS DE XAILER.
>>
>>
>> ALGUIIEN HA TRABAJADO CON SERVIDORES REMOTOS , HA TENIDO ESTOS PROBLEMAS?
>>
>> Ayuda Please!
>>
>>
>>
>> Saludos...
>
>
xAvi
Mensajes: 108
Registrado: Mar Abr 08, 2008 6:12 pm

MySql server has gone away

Mensaje por xAvi »

Martin,
Mira el modo del servidor.-
SELECT [email=@@sql_mode]@@sql_mode[/email];
Igual esta activo IGNORE_SPACE y tienes algún nombre en conflicto.
http://dev.mysql.com/doc/refman/5.1/en/ ... solution.h tml
Un saludo
Xavi
Martin Del Angel
Mensajes: 360
Registrado: Mié Dic 03, 2008 5:05 am

MySql server has gone away

Mensaje por Martin Del Angel »

Disculpa mi Ignorancia:
Cheque slq_mode con SQLYog y no tiene ningun valor.
tanto en SELECT [email=@@global.sql_mode]@@global.sql_mode[/email] me da nulo
SELECT [email=@@session.sql_mode]@@session.sql_mode[/email] me da nulo
SELECT [email=@@sql_mode]@@sql_mode[/email] me da nulo
La Base de Datos esta en un servidor remoto de WebHosting creo sobre LINUX.
estuve leyendo todos los modos del servidor y al parecer la base da
datos actua como si estuviera configurada como 'ANSI'
Por el dia de hoy me rindo, me acaban de hablar para ir a cenar cabrito
y unas frias.
Saludos...
xAvi escribió:
> Martin,
>
> Mira el modo del servidor.-
>
> SELECT [email=@@sql_mode]@@sql_mode[/email];
>
> Igual esta activo IGNORE_SPACE y tienes algún nombre en conflicto.
>
> http://dev.mysql.com/doc/refman/5.1/en/ ... solution.h tml
>
> Un saludo
> Xavi
xAvi
Mensajes: 108
Registrado: Mar Abr 08, 2008 6:12 pm

MySql server has gone away

Mensaje por xAvi »

Martin,
Creo que ese es el motivo: "IGNORE_SPACE is also enabled by certain other composite modes such as ANSI that include it in their
value".
Si no dispones de control total del servidor lo mejor es que adaptes el cliente, tendrás más tiempo para otras cosas y harás
mejor las digestiones. :)
Un cordial saludo
Xavi
Martin Del Angel escribió:
> Disculpa mi Ignorancia:
>
> Cheque slq_mode con SQLYog y no tiene ningun valor.
>
> tanto en SELECT [email=@@global.sql_mode]@@global.sql_mode[/email] me da nulo
> SELECT [email=@@session.sql_mode]@@session.sql_mode[/email] me da nulo
> SELECT [email=@@sql_mode]@@sql_mode[/email] me da nulo
>
> La Base de Datos esta en un servidor remoto de WebHosting creo sobre LINUX.
>
> estuve leyendo todos los modos del servidor y al parecer la base da
> datos actua como si estuviera configurada como 'ANSI'
>
>
> Por el dia de hoy me rindo, me acaban de hablar para ir a cenar cabrito
> y unas frias.
>
>
>
> Saludos...
>
>
>
>
>
> xAvi escribió:
>> Martin,
>>
>> Mira el modo del servidor.-
>>
>> SELECT [email=@@sql_mode]@@sql_mode[/email];
>>
>> Igual esta activo IGNORE_SPACE y tienes algún nombre en conflicto.
>>
>> http://dev.mysql.com/doc/refman/5.1/en/ ... solution.h tml
>>
>> Un saludo
>> Xavi
Martin Del Angel
Mensajes: 360
Registrado: Mié Dic 03, 2008 5:05 am

MySql server has gone away

Mensaje por Martin Del Angel »

Muchas Gracias por tu ayuda xAvi!
Un cordial saludo...
Martin Del Angel
Mensajes: 360
Registrado: Mié Dic 03, 2008 5:05 am

MySql server has gone away

Mensaje por Martin Del Angel »

Por Fin le encontre la Solución!
No era problema de SQL_MODE
No era problema de Sintaxis
era algo tan simple , pero por desconocimiento de MySql, hasta que no se
pone uno a investigar y leer, leer
El tiempo wait_timeout del servidor remoto de Web Hosting donde esta la
base de datos actualmente es de 10 segundos, entonces cada 10 segundos
se mata los procesos ejecutandose, entonces hice lo siguiente:
AppData:AddData( "BD",::oMYSQL_LICENCIAS)
IF !AppData:BD:Execute("SET SESSION wait_timeout=28880")
MSGSTOP('Al Establecer Modo en LICENCIAS IVAVISION','Error')
RETURN NIL
ELSE
MSGINFO('wait_timeout Establecido a 28880')
ENDIF
ya funciono perfectamente
Pero despues de 2.5 minutos el proceso era Asesinado
(Eliminado,Desconectado) , lo estuve obesrvando en los procesos de
phpMyadmin desde el control panel
Entonces puse otra variable que es interactive_timeout a 28880 (8 Horas)
pero el servidor no respeto este valor
AppData:AddData( "BD",::oMYSQL_LICENCIAS)
IF !AppData:BD:Execute("SET SESSION interactive_timeout=28880")
MSGSTOP('Al Establecer Modo en LICENCIAS IVAVISION','Error')
RETURN NIL
ELSE
MSGINFO('interactive_timeout establecido a 28880')
ENDIF
Entonces puse un timer con un intervalo de 1 minuto, el cual refresca
el Query ::oMYSQL_LICENCIAS:Refresh().
WITH OBJECT ::oTimer1
:enable()
END
Cada minuto se envia un Query al Servidor y esto permite que no
desconecte por razones de "interactive_timeout" el cual configurado a
200 segundos en el servidor y el cual trate de cambiar ,pero no dio
resultado, por eso puse el timer para que se ejecute un query.
y con esto hasta ahorita llevo 5 horas y sigue funcionando perfectamente
(Por supuesto con los DataControls de Xailer)
De esta manera los Datacontrols trabajan perfectamente con un servidor
Remoto Hospedado en un sitio Web.
Se aceptan sugerencias.
Muchas gracias xAvi por tu ayuda
Saludos...
Avatar de Usuario
jfgimenez
Site Admin
Mensajes: 5718
Registrado: Lun Abr 06, 2015 8:48 pm
Contactar:

MySql server has gone away

Mensaje por jfgimenez »

Martín,
supongo que ese timeout está puesto así por defecto para que el servidor
cierre las conexiones que estén caidas (o que no se hayan cerrado
correctamente) y que pueden saturar al servidor.
--
Un saludo,
José F. Giménez
http://www.xailer.com
http://www.xailer.info
José F. Giménez
[Equipo de Xailer / Xailer team]
http://www.xailer.com
http://www.xailer.info
xAvi
Mensajes: 108
Registrado: Mar Abr 08, 2008 6:12 pm

MySql server has gone away

Mensaje por xAvi »

OT: Sólo por dejar el comentario. :)
El problema es que muchos servidores en Internet emulan las conexiones HTTP/1.0 sin Keep-Alive, entonces para el análisis del
cliente ya no sólo hay que pensar de manera diferente a la hora de USE y CLOSE de tablas si no que para cada petición al
servidor hay que pensar en Re-Abrir la conexión si esta no está viva.
Un posible solución en el cliente serí­a capturar el error y restablecer la conexión.
Un saludo
Xavi
Martin Del Angel escribió:
> Por Fin le encontre la Solución!
>
> No era problema de SQL_MODE
> No era problema de Sintaxis
> era algo tan simple , pero por desconocimiento de MySql, hasta que no se
> pone uno a investigar y leer, leer
>
>
> El tiempo wait_timeout del servidor remoto de Web Hosting donde esta la
> base de datos actualmente es de 10 segundos, entonces cada 10 segundos
> se mata los procesos ejecutandose, entonces hice lo siguiente:
>
> AppData:AddData( "BD",::oMYSQL_LICENCIAS)
> IF !AppData:BD:Execute("SET SESSION wait_timeout=28880")
> MSGSTOP('Al Establecer Modo en LICENCIAS IVAVISION','Error')
> RETURN NIL
> ELSE
> MSGINFO('wait_timeout Establecido a 28880')
> ENDIF
>
> ya funciono perfectamente
>
> Pero despues de 2.5 minutos el proceso era Asesinado
> (Eliminado,Desconectado) , lo estuve obesrvando en los procesos de
> phpMyadmin desde el control panel
>
> Entonces puse otra variable que es interactive_timeout a 28880 (8 Horas)
> pero el servidor no respeto este valor
>
> AppData:AddData( "BD",::oMYSQL_LICENCIAS)
> IF !AppData:BD:Execute("SET SESSION interactive_timeout=28880")
> MSGSTOP('Al Establecer Modo en LICENCIAS IVAVISION','Error')
> RETURN NIL
> ELSE
> MSGINFO('interactive_timeout establecido a 28880')
> ENDIF
>
> Entonces puse un timer con un intervalo de 1 minuto, el cual refresca
> el Query ::oMYSQL_LICENCIAS:Refresh().
>
> WITH OBJECT ::oTimer1
> :enable()
> END
>
> Cada minuto se envia un Query al Servidor y esto permite que no
> desconecte por razones de "interactive_timeout" el cual configurado a
> 200 segundos en el servidor y el cual trate de cambiar ,pero no dio
> resultado, por eso puse el timer para que se ejecute un query.
>
> y con esto hasta ahorita llevo 5 horas y sigue funcionando perfectamente
> (Por supuesto con los DataControls de Xailer)
>
>
>
> De esta manera los Datacontrols trabajan perfectamente con un servidor
> Remoto Hospedado en un sitio Web.
>
>
>
> Se aceptan sugerencias.
>
> Muchas gracias xAvi por tu ayuda
>
> Saludos...
>
>
>
>
>
>
>
>
>
Martin Del Angel
Mensajes: 360
Registrado: Mié Dic 03, 2008 5:05 am

MySql server has gone away

Mensaje por Martin Del Angel »

Hola Buen Dia!
Jose/xAvi puedo checar si esta abierta la base de datos y reabrirla si
no lo esta, pero que pasa con la información , supongo que no se corrompe?
ó solo con re-abrir la base de datos es mas que suficiente?
No serí­a buena idea crear un evento en el TMySqlDataSource que se
disparara opcionalmente por el usuario como por ejemplo:
TMySqlDataSource:Heartbeat(.t.,60) donde el primer parametro es el que
indica si se dispara o no , y el segundo el tiempo de espera para que se
dispare.
Bueno es una posible sugerencia, que no vendrí­a mal.
Saludos...
xAvi
Mensajes: 108
Registrado: Mar Abr 08, 2008 6:12 pm

MySql server has gone away

Mensaje por xAvi »


#include "Xailer.ch"
//---------------------------------------------------------- --------------------
// SOPORTE CONEXION DATA SOURCE MySQL
//---------------------------------------------------------- --------------------
#define DK_DEFAULT_OR_NOT DEFAULT // Why ? :'(
CLASS TMySQLDataSource FROM XMySQLDataSource
METHOD Execute( cCmdMySQL, cEOpe, @aData, @aHeaders )
METHOD File( cLikeVTabName )
ENDCLASS
METHOD Execute( cCmdMySQL, cEOpe, aData, aHeaders ) CLASS TMySQLDataSource
Local oE, lSuccess, lDone := TRUE
while( lDone )
lDone := FALSE
TRY
lSuccess := Super:Execute( cCmdMySQL, cEOpe, @aData, @aHeaders )
// Now the integrity of your DATA is PROBLEM of MySQL. :) :) :)
CATCH oE
lSuccess := FALSE
SWITCH( oE:GenCode )
CASE 2006 // MySQL server has gone away
::Disconnect(); ProcessMessages(); Sleep( 10 )
lDone := lSuccess := ::Connect(); ProcessMessages(); Sleep( 10 )
if( !lSuccess )
DEFAULT cEOpe TO ''
::CheckError( cEOpe + ' => Re-Connect ERROR' )
endif
EXIT
CASE 1053 // Desconexion de servidor en proceso
CASE 1152 // Conexión abortada
DK_DEFAULT_OR_NOT // What ??? 8-)
WITH OBJECT oE
:Operation := :ProcName := ProcName( 1 )
:ProcLine := ProcLine( 1 )
END
Throw( oE )
END
END
enddo
RETURN lSuccess
METHOD File( cLikeVTabName ) CLASS TMySQLDataSource
Local aData, lSuccess := ::Execute( [SHOW TABLES LIKE '] + cLikeVTabName + ['], cLikeVTabName, @aData )
RETURN lSuccess .and. !Empty( aData )
//---------------------------------------------------------- --------------------
--
Martin Del Angel
Mensajes: 360
Registrado: Mié Dic 03, 2008 5:05 am

MySql server has gone away

Mensaje por Martin Del Angel »

Gracias xAvi!
Lo voy a implementar en la primera oportunidad, te aviso a ver como
funciona.
Muchas Gracias....
Un Saludo...
xAvi escribió:
> Martin,
>
> Copia el siguiente código en tus fuentes o incorpora al proyecto el
> fichero adjunto y dime como se comporta tu aplicación
> quitando lo del Timer y lo del refresco del Query.
>
> //---------------------------------------------------------- --------------------
>
> // SOPORTE CONEXION DATA SOURCE MySQL
> //---------------------------------------------------------- --------------------
>
> #define DK_DEFAULT_OR_NOT DEFAULT // Why ? :'(
>
> CLASS TMySQLDataSource FROM XMySQLDataSource
> METHOD Execute( cCmdMySQL, cEOpe, @aData, @aHeaders )
> METHOD File( cLikeVTabName )
> ENDCLASS
>
> METHOD Execute( cCmdMySQL, cEOpe, aData, aHeaders ) CLASS TMySQLDataSource
> Local oE, lSuccess, lDone := TRUE
>
> while( lDone )
> lDone := FALSE
> TRY
> lSuccess := Super:Execute( cCmdMySQL, cEOpe, @aData, @aHeaders )
> // Now the integrity of your DATA is PROBLEM of MySQL. :) :) :)
> CATCH oE
> lSuccess := FALSE
> SWITCH( oE:GenCode )
> CASE 2006 // MySQL server has gone away
> ::Disconnect(); ProcessMessages(); Sleep( 10 )
> lDone := lSuccess := ::Connect(); ProcessMessages(); Sleep(
> 10 )
> if( !lSuccess )
> DEFAULT cEOpe TO ''
> ::CheckError( cEOpe + ' => Re-Connect ERROR' )
> endif
> EXIT
> CASE 1053 // Desconexion de servidor en proceso
> CASE 1152 // Conexión abortada
> DK_DEFAULT_OR_NOT // What ??? 8-)
> WITH OBJECT oE
> :Operation := :ProcName := ProcName( 1 )
> :ProcLine := ProcLine( 1 )
> END
> Throw( oE )
> END
> END
> enddo
> RETURN lSuccess
>
> METHOD File( cLikeVTabName ) CLASS TMySQLDataSource
> Local aData, lSuccess := ::Execute( [SHOW TABLES LIKE '] +
> cLikeVTabName + ['], cLikeVTabName, @aData )
> RETURN lSuccess .and. !Empty( aData )
>
> //---------------------------------------------------------- --------------------
Responder