OPENTABLE()
//
// OpenTable(cSql,lFill,oOdbc,lChecktable,lExcluye,lDicc,lLimit,lLower)
// Parámetros
//
// Devuele en Cursor Virtual mediante la clase TTABLE contentivo de los registros de una Sentencia SQL mediante la conexion con una base de datos bien sea Nativa MySQL u conexión ODBC
//
1 cSql := "DPUSUARIOS" // Nombre de la tabla o Sentencia SQL, caso de nombre de la tabla "DPUSUARIOS" asumirá "SELECT * FROM DPUSUARIOS"
2 lFill :=.T. // Valor por defecto es .T. Lectura de Registro o Cursor Vacio para insertar Registros
3 oOdbc := NIL // Objeto de la Base de datos, En caso de ser vacio será obtenido mediante la funcion OpenOdbc() desde el diccionario de datos según nombre de la tabla
4 lCheckTable :=.F. // Revisa la sintaxis SQL y Existencia de las tablas vinculadas de la Sentencia SQL
5 lExcluye :=oDp:lExcluye // Agrega exclusiones en la clausula WHERE
6 lDicc :=.T. // Valida las tablas en el diccionario de Datos, para ser utilizado con otras bases de datos, indicar .F.
7 lLimit :=.F. // Agrega paginado mediante la sentencia LIMIT
8 lLower :=.F. // Convierte el nombre de las tablas en minúscula, según el diccionario de datos.
FUNCTION OpenTable(cSql,lFill,oOdbc,lChecktable,lExcluye,lDicc,lLimit,lLower)
LOCAL oCursor,cTable:=CTABLE(cSql)
DEFAULT oOdbc:=OPENODBC(cTable)
oCursor:=TTable():New( NIL, cSql, oOdbc, NIL, IIF(lFill, 0, 1 ), NIL, NIL, NIL, lLower)
RETURN oCursor
METHOD New(oCursor,cSql,oOdbc,cTable,nOption,cPrimary,lCheck,lLimit,lLower) CLASS Ttable
LOCAL oCursor,cTable:=CTABLE(cSql)
DEFAULT oOdbc:=OPENODBC(cTable)
IF oOdbc:ClassName()<>”TODBC”
oCursor:=MyTable(cSql,.T.,oOdbc:cDsn,NIL,oOdbc)
ELSE
oCursor :=oOdbc:Query(cSql)
ENDIF
RETURN oCursor/
//EOF
Solicita un cursor de datos SQL.
Debe contener una sentencia de léxico SQL
Indica con .T. si carga los datos. Por defecto su valor es .T.
Ejemplo:
oCursor:=OpenTable(“SELECT TAB_NUMERO,TAB_TABLE”+;
“ FROM DPTABLAS ”+;
“ ORDER BY TAB_NUMERO”,.t.)
oCursor:Gotop()
WHILE !oCursor:Eof()
? oCursor:TAB_NUMERO,oCursor:TAB_TABLE
oCursor:DbSkip()
ENDDO
oCursor:End()
//EOF
Puede observar que la consulta puede ser manejada de manera similar a una tabla DBF abierta a través de funciones del RDD o mejor dicho abierta con: USE TABLA. Para mayor información consulte la clase TTABLE de este manual.
Funcionalidad para conexiones remotas, clase TTABLE y función DPMYSQLBD, Que permite realizar transacciones para consultar, modificar y agregar registros en una base de datos ubicada en otro servidor. Requiere Binario 11/03/2015
// Conexión Remota |