Foros del Web » Programando para Internet » Android »

Conexión Base de Datos externa MySQL

Estas en el tema de Conexión Base de Datos externa MySQL en el foro de Android en Foros del Web. Hola a todos/as, Estoy realizando una aplicación móvil para android en la cual se establece una conexión con una base de datos externa MySQL. La ...
  #1 (permalink)  
Antiguo 01/04/2014, 09:49
 
Fecha de Ingreso: enero-2013
Mensajes: 54
Antigüedad: 11 años, 9 meses
Puntos: 0
Conexión Base de Datos externa MySQL

Hola a todos/as,

Estoy realizando una aplicación móvil para android en la cual se establece una conexión con una base de datos externa MySQL. La función que se encarga de la conexión en la siguiente:

Código Java:
Ver original
  1. public void conectarBDMySQL() {
  2.         if (conexionMySQL == null) {
  3.             try {
  4.                 Class.forName("com.mysql.jdbc.Driver");
  5.                 String servidor = "jdbc:mysql://localhost";
  6.                 String usuario = "root";
  7.                 String password = "";
  8.                 conexionMySQL = (Connection)DriverManager.getConnection(servidor,
  9.                         usuario, password);
  10.                 if (conexionMySQL != null) {
  11.                     Toast.makeText(getApplicationContext(), "Conexión establecida ...", Toast.LENGTH_LONG).show();
  12.                 }
  13.             } catch (ClassNotFoundException e) {
  14.                 Toast.makeText(getApplicationContext(),
  15.                         "Error: " + e.getMessage(), Toast.LENGTH_LONG).show();
  16.             } catch (SQLException e) {
  17.                 Toast.makeText(getApplicationContext(),
  18.                         "Error: " + e.getMessage(), Toast.LENGTH_LONG).show();
  19.             }
  20.         }
  21.     }

Le he dato mil vueltas pero siempre me da error (Error: Could no create connection to data base server). Alguien puede ayudarme?.
  #2 (permalink)  
Antiguo 01/04/2014, 12:12
Avatar de racanix  
Fecha de Ingreso: diciembre-2008
Ubicación: Morelia Mich.
Mensajes: 192
Antigüedad: 15 años, 11 meses
Puntos: 8
Respuesta: Conexión Base de Datos externa MySQL

Intenta cambiar localhost por la dirección real de tu servidor, ya que en String servidor = "jdbc:mysql://localhost"; le estas indicando a tu app que busque en tu smarthphone.
  #3 (permalink)  
Antiguo 01/04/2014, 17:35
 
Fecha de Ingreso: agosto-2013
Ubicación: Guatemala
Mensajes: 137
Antigüedad: 11 años, 3 meses
Puntos: 4
Respuesta: Conexión Base de Datos externa MySQL

@racanix tiene razón, pero si lo que pretendes es que se conecte a tu servidor local (tu computadora con wamp, lamp, xamp, o la que sea en lugar de "localhost" debe ser la ip de la computadora y tenés que estar en la misma red para que pueda encontrarla.
  #4 (permalink)  
Antiguo 02/04/2014, 01:44
 
Fecha de Ingreso: enero-2013
Mensajes: 54
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Conexión Base de Datos externa MySQL

He estado investigando sobre el tema y por lo visto no se puede conectar una aplicación android con un servidor remoto por medio de JDBC. ¿Que ocurrirá cuando tenga instalada la aplicación en mi móvil e intente conectar con mi base de datos remota?

La solución que he encontrado es JSON pero es bastante compleja.

Esto me va a llevar más tiempo de lo que esperaba!.
  #5 (permalink)  
Antiguo 02/04/2014, 11:28
Avatar de racanix  
Fecha de Ingreso: diciembre-2008
Ubicación: Morelia Mich.
Mensajes: 192
Antigüedad: 15 años, 11 meses
Puntos: 8
Respuesta: Conexión Base de Datos externa MySQL

En este tema comentan algo que quizás requieras

http://www.forosdelweb.com/f165/como...droid-1095411/

Sin embargo desde mi punto de vista no es recomendable realizar una conexión directa al

servidor SQL (Si fuese posible) por temas de seguridad; Como comentas la solución es delegar esta responsabilidad a un WS el cual sera responsable de mostrar la información en diferentes formatos (JSON, XML) y sera responsabilidad de los diferentes clientes consumir adecuadamente este.

JSON no es complejom un simple json podria ser "{success:true, msg:'Hola Mundo'}", la verdadera complejidad sera crear y mantener adecuadamente el servicio.

Este es un tutorial de como consumir el servicio en android
http://www.sgoliver.net/blog/?p=2665

Suerte.

Etiquetas: androi, app, externa, mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:22.