Mais ou menos assim
Function Main()
cPastadoBanco := cLinguagem := cFilePath( ExeName() )
FWCONNECT oBanco HOST cPastadoBanco LANGFOLDER cLinguagem DATABASE "BASEMDB"
IF oBanco == nil
? "Connect fail"
ELSE
aEstr:={}
AADD( aEstr ,{"PED_ID" ,'varchar(60)', 60,0,"PRI" } )
IF !oBanco:TableExists( "SLFOOD" )
oBanco:CreateTable( "SLFOOD",aEstr )
ELSE
//lChg := ChkStruct("slfood", aEstr, oBanco)
ENDIF
ENDIF
//
hb_threadStart( HB_THREAD_INHERIT_PUBLIC, HB_THREAD_INHERIT_PRIVATE, HB_THREAD_INHERIT_MEMVARS, { || AUTENTICACAO() } )
//AQUI FUNCIONA O COMANDO DE MARIADB NORMAL
oSLFOOD:= oBanco:RowSet( "SELECT * FROM SLFOOD" , .t. )
RETURN .t.
*****************************************************
FUNCTION AUTENTICACAO()
//SE EU TENTAR USAR O COMANDO DE MARIADB AQUI DÁ ERRO
oSLFOOD:= oBanco:RowSet( "SELECT * FROM SLFOOD WHERE PED_PED LIKE 'PLC%'" , .t. )
RETURN .T.