como hago la conexion entre java y mysql? tengo instalado el mysql 4.0.x.x
pero solo encuentro drives para conectar a mysql de versiones 3.0,3.1 y 5.0 ,funciona si lo pongo por decir para mysql 3.0 funcionaria igual?yo tengo instalado el mysql 4.0.
| |||
Normalmente es más seguro usar versiones superiores del driver JDBC que las inferiores. Así que a no ser que te de algun problema raro, mejor usa la version para MySQL 5 ya que seguramente estara pensada para ser compatible con versiones anteriores. |
| ||||
en que directorio de java debo poner el driver(.jar)? la mayoria sugiere que ponga donde esta mi programa (mi .java) perono funciona al compilarlo aparece : C:\Archivos de programa\Xinox Software\JCreatorV3\MyProjects\PruebaMySQL.java:20 : package org.gjt.mm.mysql does not exist DriverManager.registerDriver(new org.gjt.mm.mysql.Driver()); ^ 1 error Process completed. parece que el no esta reconociendo el driver la verdad no se como instale mi java ,pero tengo instala do en c:\Archivos de progra..\java\ +j2re1.4.2 +j2re1.4.2_01 +jdk1.5.0 +jre1.5.0 y tambien tengo en C:\JSDK2.0 ,este no se para que servira , es que instale de todo para que pueda compilar mis programas para que sirve cada uno de esas 5 carpetas? instale algunas de mas? creo q solo se instala el jdk ,no? ahora ,donde va el driver?, una ayuda porfavor
__________________ "Todas las cosas deben mostrarse primero con mascaras tetricas y terrorificas para que puedan inscribirse a si mismas en el corazon de la humanidad" |
| |||
Para que funcione tienes que configurar el classpath para que incluya tu fichero .jar, tanto en compilacion como en ejecucion. Una opcion es ejecutar los comandos con -cp para pasarles directamente el classpath. Si tienes tus .java y el fichero .jar en el mismo directorio, te vas a ese directorio y ejecutas: javac -cp .;FicheroDriver.jar MiClase.java y deberia funcionar. Investiga el concepto de classpath y como funciona, es imprescindible en Java. http://java.sun.com/j2se/1.4.2/docs/...classpath.html |
| ||||
ya me funciona bien el conector, porque no me da la execpcion osea pongo solo el conector ,osea: try{ DriverManager.registerDriver(new org.gjt.mm.mysql.Driver()); }catch(Exception e){ System.out.println("no existe el controlador"); } si estari mal el controlador o no se encontraria en la ubcacion correcta me dari la execpcion,no? ahora tengo otro problema ,no puedo conectarme a la base de datos try { // Este driver está en mysql-connector-java-3.1.7-bin.jar DriverManager.registerDriver(new org.gjt.mm.mysql.Driver()); // Establecemos la conexión con la base de datos. Connection conexion = DriverManager.getConnection ("jdbc:mysql://localhost/prueba","usuario", "pass"); } catch (SQLException e) { System.out.println("Ahora es la execpcion para el Connection"); System.out.println("SQLException: " + ex.getMessage()); System.out.println("SQLState: " + ex.getSQLState()); System.out.println("VendorError: " + ex.getErrorCode()); } } noten que ahora q pongo la conexion en un try ,catch con SQLException y me da una excepcion, es esta: Comunications link failure due to underlying exception: dice algo como que el hosting es desconocido me da esa excepcion porque el Connection esta fallando,no? sino la anterior hubiera dado alguna excepcion osea por consola hago los siguiente tengo instalado el appserv,ose viene el mysql,phpAdmin,php y apache , lo configure como viene por defecto y para entrar por consola hago esto C:\appserv\mysql\bin (aqui estan los .exe de mysql) entonces: C:\appserv\mysql\bin>mysql -h localhost -u usuario -p pass y entra, entra bien a mysql estan las base de datos,todas show databases; me muestran todas, ahora el problema es porque no puedo conectarme con mysql desde java, porrque? o la llamada al driver esta mal? pero si estari mal me daria la excepcion primera q les mostre,no? como hago ahora? cual es la diferencia de usar Class.forName("com.mysql.jdbc.Driver"); y DriverManager.registerDriver(new org.gjt.mm.mysql.Driver()); talvez estoy fallando en el dirver ahora estoy usando el que esta en: http://dev.mysql.com/downloads/connector/j/5.0.html Source and Binaries (zip) escogi el mirror de argentina y bajo, talvez estoy fallando en algo? el nombre del jar es este(del conector): mysql-connector-java-5.0.4-bin.jar tambien hice la prueba con mysql-connector-java-3.1.1-alpha-bin.jar y no conecta , como hago ? el driver lo puse en c:\Archivos de programa\Java\jdk1.5.0\jre\lib\ext porque en mi directorio c:\Archivos de programa\Java\jdk1.5.0\bin ahi estan los archivos con los que compila,ejecuta, crea el jar ,etc mi JCreator esta bien donde lo puse el conector? a mi me dijeron q era asi, ya lei eso del classpath pero es otro lio, es para compilar ,java de direccions distintas y todo eso ,mi JCreator ya venia configurado por defecto con esas mejoras porfavor ayudenme donde estoy fallando?
__________________ "Todas las cosas deben mostrarse primero con mascaras tetricas y terrorificas para que puedan inscribirse a si mismas en el corazon de la humanidad" |
| |||
Si te dice "Comunications link failure due to underlying exception" y te dice algo de host desconocido, asegurate que tienes en marcha la base de datos en marcha en el puerto por defecto, etc, etc. Eso suele indicar que la cadena de conexion apunta a un host que no existe o donde no hay una BDD en marcha. |
| ||||
ya hice una consulta desde sql en java pero hay un roblema agregue el conector.jar de esta forma: set CLSSPATH=C:\conector.jar; (El conector esta en el root de C) ahora funciona bien las consultas y todo ,pero ,la interfaz de usuario no funciona ,osea esta en otra carpeta la IU y no lo compila dice q no se puso esa carpeta al classpath o algo asi,cmo se hace eso? antes de poner sel set classs... funcionaba bien al compilarlo la interfaz de usuario tengo una duda mayor cuales son los instaladores que debo tener para que funcione java? osea tengo instalado de esta forma: :\Archivos de progra..\java\ +j2re1.4.2 +j2re1.4.2_01 +jdk1.5.0 +jre1.5.0 donde esta el compilador e interprete de java es en jdk1.5.0 pero en los tutoriales que veo donde compilan lo tienen en : C:\j2sk1.4.0\bin es distinto el jdk con el j2sdk? cual es lo ultima version que salio?
__________________ "Todas las cosas deben mostrarse primero con mascaras tetricas y terrorificas para que puedan inscribirse a si mismas en el corazon de la humanidad" |
| ||||
Muchacho Tienes que inportar el jar de coneccion de MySql a tu proyecto. Como lo inportas? Depende dle IDE que uses .... En el ECLIPSE, solo selecionas el proyecto, le das click derecho y en propiedades ...... Hay una columna a la izq, dice "java build path" lo selecionas y a la derecha te aparece varios botones, uno de ellos de "Add External JAR" lo agregas y listo. |
| ||||
Ahora les tengo una consulta !! Como hago pa conectarme a MySql pero q esta en otra maquina. Explico: La BD la tengo en una maquina y el aplicativo que se conecta a la BD esta en otra. Como logro hacer la coneccion?????? He intentado poniendole la ip en lugar que "localhost" en la cadena de conexion pero no pasa nahhh !!! AYUDENME PORFAA |
| ||||
como ya les dije hice : set CLASSPATH=C:\conector.jar con esto agrego a mi classpath el conector,no? estoy usando el JCreator ,como agrego el .jar a mi proyecto? que diferencias hay entre el j2sdk y el jdk? es q en la mayoria de los tutoriales configuran el jar en el j2sk y yo uso para compilar y ejecutar mis programas con el jdk, existe alguna diferencia?
__________________ "Todas las cosas deben mostrarse primero con mascaras tetricas y terrorificas para que puedan inscribirse a si mismas en el corazon de la humanidad" |
| ||||
ya agregue el conector.jar a mi classpath ,ya lo puedo ver al hacer "set" desde el cmd osea ya esta bien ,pero ahora me sale un problema este es un simple codigo para ver si funciona la conexion a mysql: import java.sql.*; public class PruebaMySQL { ResultSet res=null; String consulta=""; public PruebaMySQL() { try { Class.forName("com.mysql.jdbc.Driver").newInstance (); Connection c=DriverManager.getConnection("jdbc:mysql://localhost/prueba","root",""); } catch (Exception e) { //System.out.println(e.getClass()); e.printStackTrace(); } } public static void main(String[] args) { new PruebaMySQL(); } } me da una excepcion java.sql.SQLException: Unable to connect to any hosts due to exception: java.net.UnknownHostException: localhost a mysql me conecto de la sgte forma: c:\mysql\bin>mysql -h localhost -u root y entra sin ningun problema y dentro de ahi tengo una base de datos llamada prueba y funciona porque me esta saliendo esa excepcion , ya puse el .jar al classpath y tambien lo puse en el jdk\jre\lib\ext ayuda porfavor
__________________ "Todas las cosas deben mostrarse primero con mascaras tetricas y terrorificas para que puedan inscribirse a si mismas en el corazon de la humanidad" |
| |||
Re: conexion java-mysql hola saben he estado leyendo lo anterior por que estoy enb las mismas pero tengo un problema me aparece el sgte error: java.sql.SQLException: Unknown initial character set index '48' received from server. Initial client character set can be forced via the 'characterEncoding' property. y no se que indica estoy usando bluej para compilar mis .java pero no me resulta la coneccion... puta ojala me ayuden |