Uso de ODBC e MySql no Pocket

Post Reply
Mauro
Posts: 16
Joined: Tue Aug 22, 2006 3:20 pm
Location: Brasilia - DF Brasil

Uso de ODBC e MySql no Pocket

Post by Mauro »

Ola a todos

Existe alguma possibilidade de usar MySql com OBDC no Pocket e se
sim como fazer ?

Saludos
Mauro
Mauro
Posts: 16
Joined: Tue Aug 22, 2006 3:20 pm
Location: Brasilia - DF Brasil

Re: Uso de ODBC e MySql no Pocket - MySqlMobile

Post by Mauro »

Mauro wrote:Ola a todos

Existe alguma possibilidade de usar MySql com OBDC no Pocket e se
sim como fazer ?

Saludos
Mauro
Olá a todos

baixei deste site
http://www.pocketgear.com/software_detail.asp?id=21135
um software chamado MySqlMobile, onde tem exemplos e uma dll,
fiz um pequeno programa de testes, abaixo, ele conecta com o banco, mas
depois da conexão trava..
Alguma idéia ?
Uso o Build de Julho/2006

#include "fwce.ch"
#include "dll.ch"

// erros devolvidos pela mysqlmobile.dll
#define EXTERNAL_ERROR -2000
#define CONNECTION_TIMED_OUT -1001
#define SOCKET_NOT_VALID -1002
#define SOCKET_CONNECTION_FAILED -1003
#define MYSQL_NOT_CONNECTED -1004
#define WRONG_PACKET_DATA -1005
#define EMPTY_PARAMETER_NOT_ALLOWED -1006
#define FIELD_NOT_FOUND -1007
#define ROW_NOT_FOUND -1008
#define UNKNOWN_FIELD_PARAMETER -1009
#define NO_SUCH_COLUMN -1010
#define NO_SUCH_ROW -1011
#define ZLIB_DECOMPRESSION_ERROR -1012

function Main()

local oWnd
local oBtn1

DEFINE WINDOW oWnd TITLE "MySql"


@ 001, 001 BUTTON oBtn1 PROMPT "Conecta" OF oWnd ;
ACTION Conecta() ;
SIZE 100, 30 ;
PIXEL

@ 001, 140 BUTTON oBtn1 PROMPT "Abre Banco" OF oWnd ;
ACTION AbreBanco() ;
SIZE 100, 30 ;
PIXEL


@ 060, 001 BUTTON oBtn1 PROMPT "Query" OF oWnd ;
ACTION FazQuery() ;
SIZE 100, 30 ;
PIXEL

@ 060, 140 BUTTON oBtn1 PROMPT "Desconecta" OF oWnd ;
ACTION Desconecta() ;
SIZE 100, 30 ;
PIXEL



@ 120, 060 BUTTON oBtn1 PROMPT "Sair" OF oWnd ;
ACTION oWnd:End() ;
SIZE 100, 30 ;
PIXEL


ACTIVATE WINDOW oWnd


return nil

//----------------------------------------------------------------------------//
function Conecta()
CursorWait()

nRet := MyConectar("xxx.xxx.xxx.xxx",3306,"user","pass") // ip,porta mysql, usuario e password
SysRefresh()
MsgInfo(iif(nRet=0,"Conectado", "Erro - não conectou"), "Atenção")
// aqui trava e não sai da MsgInfo
CursorWe()

return nil

//----------------------------------------------------------------------------//
function AbreBanco()
CursorWait()

nRet:=MySelectDb("Nome do Banco")
MsgInfo(iif(nRet=0,"Selecionado", "Erro - não selecionou"), "Atenção")

CursorWe()

return nil
//----------------------------------------------------------------------------//
function FazQuery()
CursorWait()

nRet:=MyExeQuery("SELECT * FROM ASAS WHERE ID=1")
MsgInfo(iif(nRet=0,"Selecionado", "Erro - não selecionou"), "Atenção")

CursorWe()

return nil
//----------------------------------------------------------------------------//
function Desconecta()
CursorWait()

nRet:=MyDesconec()
MsgInfo(iif(nRet=0,"Desconectado", "Erro - não desconectou"), "Atenção")

CursorWe()

return nil
//----------------------------------------------------------------------------//

// MyComprime - Enable = 1 Habilita e = 0 Desabilita
DLL FUNCTION MyComprime(Enable AS LONG) AS VOID PASCAL FROM "mysql_enable_compression" LIB "MySqlMobile.dll"
//1234567890

//MyConectar(Host, Port, Username, Password) - retorna 0 se .t. ou <> 0 se .f.
DLL FUNCTION MyConectar(Host AS STRING,Port AS LONG,User AS STRING,Pass AS STRING) AS LONG PASCAL FROM "mysql_connect" LIB "MySqlMobile.dll"
//1234567890

//MyDesconec - retorna 0 se .t. ou <> 0 se .f.
DLL FUNCTION MyDesconec() AS LONG PASCAL FROM "mysql_disconnect" LIB "MySqlMobile.dll"
//1234567890

//MySelectDb - retorna 0 = tudo ok ou <> de zero quando erro
DLL FUNCTION MySelectDb(cBanco AS STRING) AS LONG PASCAL FROM "mysql_select_db" LIB "MySqlMobile.dll"
//1234567890

//MyExeQuery - retorna 0 = tudo ok ou <> de zero quando erro
DLL FUNCTION MyExeQuery(cQuery AS STRING) AS LONG PASCAL FROM "mysql_execute_query" LIB "MySqlMobile.dll"
//1234567890
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Mauro,

Prueba a cambiar "AS STRING" por "AS LPSTR".

Llegas a ver el MsgInfo() ?

Puedes poner la declaración de mysql_connect() en C ? Para comprobar si espera las cadenas en unicode ó no.
regards, saludos

Antonio Linares
www.fivetechsoft.com
Mauro
Posts: 16
Joined: Tue Aug 22, 2006 3:20 pm
Location: Brasilia - DF Brasil

Post by Mauro »

Antonio Linares wrote:Mauro,

Prueba a cambiar "AS STRING" por "AS LPSTR".

Llegas a ver el MsgInfo() ?

Puedes poner la declaración de mysql_connect() en C ? Para comprobar si espera las cadenas en unicode ó no.
Olá Antonio
A função chega até o MsgInfo(), mas aí trava e só dando um reset no pocket que ele sai, aí esta uma parte da documentação da MySqMobile,
um exemplo do connect em C

function int mysql_connect(char *pszhost, int nport, char *pszusername,
char *pszpassword)
function description
Use this function to connect to a mySQL database.
parameters
[in] pszhost host to connect to
[in] nport port to connect to (default mySQL port is 3306)
[in] pszusername username to access database
[in] pszpassword password to access database
return values
0 when everything went ok
not 0 when an error occurred. Get the error in textual form by calling
mysql_get_last_error(<retval>)
C/C++ example of usage
int nRet;

nRet = mysql_connect("192.168.0.15", 3306, "my_username", "my_passwd");
if (nRet == 0) {
CString str = _T("mysql_connect() successful");
MessageBox(NULL, str, _T("info"), MB_OK | MB_ICONINFORMATION);
} else {
char *errorBuf = new char[255];
mysql_get_last_error(nRet, errorBuf);
MessageBox(NULL, CString(errorBuf), _T("error"), MB_OK | MB_ICONINFORMATION);
delete errorBuf;
}
VB.NET / C# example of usage

Saludos e obrigado pela atenção, amanhã vou testar trocar os AS STRING por AS LPSTR e darei um retorno.

Mauro
Last edited by Mauro on Wed Aug 30, 2006 3:45 pm, edited 1 time in total.
Mauro
Posts: 16
Joined: Tue Aug 22, 2006 3:20 pm
Location: Brasilia - DF Brasil

MSqlMobile

Post by Mauro »

Olá Antonio

testei a troca dos STRING por LPSTR e infelizmente não funcionou...
Alguma outra idéia ?

Saludos

Mauro
rasptty
Posts: 88
Joined: Sun May 25, 2008 5:46 pm

Post by rasptty »

Achei super interessante esta DLL, ficou resolvido o problema da conecção?
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Nosotros no hemos usado MySQL desde Pocket PC, asi que es un tema que teneis que investigar vosotros mismos, pero en google hay información de sobra :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
rasptty
Posts: 88
Joined: Sun May 25, 2008 5:46 pm

Post by rasptty »

Boas , Realmente testei o Mysqlmobile.dll, e encrava,
também estou precisando com urgência um conector a base de dados
MYSQL, estou disposto a comprar o Mysqlmobile.dll, mas queria que alguem já tivesse feito um teste,
é uma pena que o FWPPC , não traga uma funções para Mysql, pois seria mais uns pontos a favor..

Um Grande Obrigado,

Será que o Mauro Já coseguiu ultrapassar o Problema ?
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Sergio,

Algunos usuarios quieren MySQL, otros quieren MS SQL, otros quieren ADO, otros quieren, quieren... :-)

FWPPC abre las puertas a programar en Windows Mobile pero no puede satisfacer a todos en todo. Ese trabajo es vuestro, de adaptar FWPPC a vuestras necesidades :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
rasptty
Posts: 88
Joined: Sun May 25, 2008 5:46 pm

Post by rasptty »

Ok linares, sé peço mais um favor relativamente a este assunto,
será que podias testar a rotina do Mouro, e melhor pola a funcionar utilizando esta dll Mysqlmobile, seria excelente, e ficava muito contente pois estou mesmo a precisar... ,

Um Grande obrigado na mesma..
Post Reply