Estoy usando
- Hibernate 3.0
- C3PO para el Pool de Conexiones
- Mysql 5.0.81-community
Actualmente acabo de migrar a otro servidor, la aplicación que YA estaba funcionando perfectamente.
1. Cree la base de datos + Estructura + Datos
2. Cree el usuario para la base de datos
3. Le asigne al usuario todos los privilegios para la base de datos
El problema es :
Código PHP:
SELECT command denied to user 'USUARIO'@'localhost' for table 'configuracion'
Código PHP:
try{
Session sess = HibernateUtil.getSessionFactory().openSession();
sess.beginTransaction();
String output = (sess.isConnected())?"CONECTADO":"NO CONECTADO";
String output2 = (sess.isOpen())?"ABIERTA":"NO ABIERTA";
out.print(output;
out.print(output2);
// LA SIGUIENTE LINEA FUNCIONA PERFECTAMENTE
out.print(sess.createSQLQuery("select usuario from configuracion").uniqueResult());
// LA SIGUIENTE LINEA DA ERROR
Configuracion pub = (Configuracion) sess.load(Configuracion.class,1);
out.print(pub.getMail1());
sess.getTransaction().commit();
sess.close();
}catch(HibernateException ex){
out.print(ex.getCause().getMessage());
}catch(Exception ex){
ex.printStackTrace();
}
Estuve buscando en google y consegui personas que sugieren eliminar el nombre de la tabla como prefijo en la sentencia SQL:
Ejemplo:
SQL original:
Código PHP:
SELECT configuracion.usuario from configuracion
Código PHP:
SELECT usuario from configuracion
¿ Hibernate ejecuta el sql usando el prefijo de la tabla sobre el campo ?
Ya no se que hacer, no hallo el problema, me conecte hasta con el mismo usuario desde una maquina remota al Mysql y puedo ejecutar normalmente cualquier sentencia SQL...
Cualquier ayuda se los agradeceria, ya que es un proyecto que debio estar online HOY y no he podido resolver.
Gracias...