Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: OssoH en 10 Marzo 2011, 15:45 pm



Título: SHH Tunnel. Conectar aplicacion delphi con mysql remoto
Publicado por: OssoH en 10 Marzo 2011, 15:45 pm
Hola a todos :
Quiero hacer una aplicación en delphi que me conecte con una BD mysql remota la cual sólo tengo acceso por medio de http tunnel ssh.
Usando Putty con la opción http tunnel funciona sin problemas y tengo acceso de inmediato a toda una tabla.
El quebradero de cabeza es como conseguir una simple consulta SELECT a esa base de datos desde delphi.
He visto por internet unas librerias llamadas SecureBridge pero no consigo hacerlas funcionar. Alguien sabe donde puedo encontrar ejemplos o otra libreria para conseguir lo mismo??  Muchas gracias


Título: Re: SHH Tunnel. Conectar aplicacion delphi con mysql remoto
Publicado por: Elemental Code en 10 Marzo 2011, 17:31 pm
puedo haber entendido mal, pero esto que vos pedis lo pedis en delphy y nosotros somos vb :S


Título: Re: SHH Tunnel. Conectar aplicacion delphi con mysql remoto
Publicado por: OssoH en 10 Marzo 2011, 19:49 pm
No he visto apartado de delphi por eso lo he puesto asi.
De todas formas puesto que no he comenzado a programar nada, igual lo hago en visual basic si veo por ahi la luz.
Gracias


Título: Re: SHH Tunnel. Conectar aplicacion delphi con mysql remoto
Publicado por: BlackZeroX en 11 Marzo 2011, 04:30 am
no te respondo en delphi por que no se ni J de el, lo que si te repondo es que usando.

Driver<BDD> + ODBC(Creo y supongo que es optativo) + ADO + String Conection puedes manejar la Base de Datos en cualquier lenguaje usando Standart en este caso MySQL..

Un ejemplo usando el SQL Server es creando una ODBC y por medio de esta conectarte a la BDD deseada, regularmente usando una ODBC puedes fijar tu codigo y por medio de la ODBC configurar toda conexión pertinente inclusive cambiar la BDD o alternarla entre varias y asi apuntar a otras BDD y Tablas y la hubicacion donde se encuentren las mismas.

Aun que en ocasiones con el simple hecho de usar ADO es suficiente por lo menos de manera local; mejor usar una conexion via ODBC (http://es.wikipedia.org/wiki/Open_Database_Connectivity) ya que te sera mas maleable en mi opinion para este tipo de casos ya que sera una conexion remota, y como a mi me da peresa estar compilando a cada rato....

Esta es mi opinion y consejo, hay quienes usen archivos INI pero es mas pesado prefiero hacerlo mas comodo para mi y para el cliente/usuario ademas Windows ya trae un administrador del ODBC en el panel de control bastante bueno a mi parecer.

Temibles Lunas!¡.


Título: Re: SHH Tunnel. Conectar aplicacion delphi con mysql remoto
Publicado por: OssoH en 11 Marzo 2011, 10:42 am
Encontre un ejemplo en delphi con HTTP Tunnel que puede servirme:
http://hardiee.blogspot.com/

Tengo el problema que no puedo hacer consultas donde devuelva más de aprox 30 registros porque me salta el siguiente error EDBEngineError whih message capability not supported.
Yo uso delphi 7 y he leido que se puede solucionar actualizando el DBE. ¿Que pensais?






Título: Re: SHH Tunnel. Conectar aplicacion delphi con mysql remoto
Publicado por: OssoH en 11 Marzo 2011, 10:47 am
Encontre un ejemplo en delphi con HTTP Tunnel que puede servirme:
http://hardiee.blogspot.com/

Tengo el problema que no puedo hacer consultas donde devuelva más de aprox 30 registros porque me salta el siguiente error EDBEngineError whih message capability not supported.
Yo uso delphi 7 y he leido que se puede solucionar actualizando el DBE. ¿Que pensais?


Rectifico el problema lo dá cuando intenta recuperar un campo del tipo TEXT en mysql, supongo que al no poderlo agregar en el TDBGrid por eso da error. Investigaré a ver como puedo solucionarlo.

Intentaré rectificar


Título: Re: SHH Tunnel. Conectar aplicacion delphi con mysql remoto
Publicado por: OssoH en 11 Marzo 2011, 11:01 am
solucionado:
Añadir la siguiente linea

Código:
else if colType = 'blob' then fieldtype := ftMemo

al código

Código:
          if (colType = 'varchar') or (colType = 'char') then fieldtype := ftString
          else if colType = 'longtext' then fieldtype := ftMemo
          else if colType = 'blob' then fieldtype := ftMemo
          else if colType = 'date' then fieldtype := ftDate
          else if colType = 'time' then fieldtype := ftTime
          else if colType = 'datetime' then fieldtype := ftDateTime
          else if (colType = 'int') or (colType = 'tinyint') or (colType = 'mediumint') or (colType = 'smallint') then fieldtype := ftInteger
          else if VarToStr(colType) = ''  then  fieldtype := ftDateTime
          else fieldtype := ftUnknown;
[code]
[/code]