Problema con TMySqlDataSource
Publicado: Vie May 13, 2011 11:22 pm
Hola...
Tengo un problema con el objeto Nativo TMySqlDataSource de la versión
Enterprise.
Cuando ejecuto una sentencia dentro del método :Query, no me devuelve el
"query deseado" desde la base de datos MySql, como lo hacía cuando utilizaba
el TAdoDataSource.
paso a explicar un poco mejor para que se entienda.
Con un objeto TAdoDataSource, yo ejecuto lo siguiente:
oAdoDataSource:Query('Show Databases')
y el resultado es un TSqlQuery con la estructura siguiente (que es lo mismo
que obtenemos si ejecutamos la sentencia en la línea de comandos de MySql)
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
Pues, al ejecutar oSqlTable:=oMySqlDataSource:Query('Show Databases'), y
hacer oSqlTable:lOpen:=.T., da el siguiente error.
STRTRAN(0)
Error BASE/1126 Argument error: STRTRAN
Argumentos: ( [ 1] = Tipo: U Valor: NIL [ 2] = Tipo: C Valor:
[ 3] = Tipo: C Valor: )
***************************** Registro de errores
*****************************
Exe: C:XailerESamplesMasterISIPruebaSQLPruebaSQL.exe
Version: 1.0.0.0
User name: Boris-2010
Computer name: SERVER2008
Fecha: 05/13/11
Hora: 18:18:49
Memoria libre: 2061860
Area actual: 1
------------------------- Información del
compilador --------------------------
Versión Xailer: Xailer 2.3.0 Version 2.3.0
Compilador: xHarbour build 1.2.1 Intl. (SimpLex) (Rev. 6511) PCode
Version: 10
Compilador C/C++: Borland C++ 5.5.1 (32 bit)
Plataforma: Windows Windows Vista Server 4.0 6.01.7600
----------------------- Información detallada del
error -----------------------
Subsistema: BASE
Código de error: 1126
Estado: .F.
Descripción: Argument error
Operación: STRTRAN
Argumentos: [ 1] = Tipo: U Valor: NIL [ 2] = Tipo: C Valor:
[ 3] = Tipo: C Valor:
Fichero:
Código error SO: 0
Pila de llamadas:
STRTRAN (0)
TMYSQLRECORDS:OPEN (181)
TSQLQUERY:OPEN (320)
(b)XSQLQUERY:XDATASET (36)
TSQLQUERY:_LOPEN (0)
TFORM1:BUTTON1CLICK (35)
TBUTTON:ONCLICK (0)
TBUTTON:CLICK (100)
(b)XCONTROL:XCONTROL (147)
TBUTTON:COMMAND (0)
TSCROLLINGWINCONTROL:WMCOMMAND (276)
TFORM1:WMCOMMAND (934)
RUNFORM (0)
TAPPLICATION:RUN (275)
MAIN (15)
Si pruebo ejecutar otros comandos, en los que tenga involucrada una tabla
por ej: Show index from Tabla, asume que la sentencia es Select * from
Tabla, y me devuelve un resultado no deseado.
He probado con otros comandos, y parece ser que solo acepta sentencias
Select. (Aclaro que utilizo un monton de comandos para trabajar como Querys,
que no son precisamente sentencias Select).
Si estoy haciendo algo mal, agradezco la ayuda.
Desde ya muchas gracias.
Tengo un problema con el objeto Nativo TMySqlDataSource de la versión
Enterprise.
Cuando ejecuto una sentencia dentro del método :Query, no me devuelve el
"query deseado" desde la base de datos MySql, como lo hacía cuando utilizaba
el TAdoDataSource.
paso a explicar un poco mejor para que se entienda.
Con un objeto TAdoDataSource, yo ejecuto lo siguiente:
oAdoDataSource:Query('Show Databases')
y el resultado es un TSqlQuery con la estructura siguiente (que es lo mismo
que obtenemos si ejecutamos la sentencia en la línea de comandos de MySql)
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
Pues, al ejecutar oSqlTable:=oMySqlDataSource:Query('Show Databases'), y
hacer oSqlTable:lOpen:=.T., da el siguiente error.
STRTRAN(0)
Error BASE/1126 Argument error: STRTRAN
Argumentos: ( [ 1] = Tipo: U Valor: NIL [ 2] = Tipo: C Valor:
[ 3] = Tipo: C Valor: )
***************************** Registro de errores
*****************************
Exe: C:XailerESamplesMasterISIPruebaSQLPruebaSQL.exe
Version: 1.0.0.0
User name: Boris-2010
Computer name: SERVER2008
Fecha: 05/13/11
Hora: 18:18:49
Memoria libre: 2061860
Area actual: 1
------------------------- Información del
compilador --------------------------
Versión Xailer: Xailer 2.3.0 Version 2.3.0
Compilador: xHarbour build 1.2.1 Intl. (SimpLex) (Rev. 6511) PCode
Version: 10
Compilador C/C++: Borland C++ 5.5.1 (32 bit)
Plataforma: Windows Windows Vista Server 4.0 6.01.7600
----------------------- Información detallada del
error -----------------------
Subsistema: BASE
Código de error: 1126
Estado: .F.
Descripción: Argument error
Operación: STRTRAN
Argumentos: [ 1] = Tipo: U Valor: NIL [ 2] = Tipo: C Valor:
[ 3] = Tipo: C Valor:
Fichero:
Código error SO: 0
Pila de llamadas:
STRTRAN (0)
TMYSQLRECORDS:OPEN (181)
TSQLQUERY:OPEN (320)
(b)XSQLQUERY:XDATASET (36)
TSQLQUERY:_LOPEN (0)
TFORM1:BUTTON1CLICK (35)
TBUTTON:ONCLICK (0)
TBUTTON:CLICK (100)
(b)XCONTROL:XCONTROL (147)
TBUTTON:COMMAND (0)
TSCROLLINGWINCONTROL:WMCOMMAND (276)
TFORM1:WMCOMMAND (934)
RUNFORM (0)
TAPPLICATION:RUN (275)
MAIN (15)
Si pruebo ejecutar otros comandos, en los que tenga involucrada una tabla
por ej: Show index from Tabla, asume que la sentencia es Select * from
Tabla, y me devuelve un resultado no deseado.
He probado con otros comandos, y parece ser que solo acepta sentencias
Select. (Aclaro que utilizo un monton de comandos para trabajar como Querys,
que no son precisamente sentencias Select).
Si estoy haciendo algo mal, agradezco la ayuda.
Desde ya muchas gracias.