Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/09/2008, 10:13
Avatar de Nighter
Nighter
 
Fecha de Ingreso: enero-2007
Mensajes: 97
Antigüedad: 17 años, 4 meses
Puntos: 0
Respuesta: Error conexión base de datos

Esta es una clase general que desarrolle que te permite la conexion con cualquier base de datos (solo define el driver) y que te da los metodos para hacer CRUD (crear, leer, actualizar y borrar) y usa store procedures. Sientance libres de modificarlo y usarlo, pero si le hace una mejora por favor publiquenla y ahi me avisan, ps pa mejorar no?

Código PHP:
package sp;

import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.Connection;
import java.sql.SQLException;
import javax.swing.JOptionPane
import com.microsoft.sqlserver.jdbc.SQLServerException;

public class 
Conector 

 private 
Connection conn;    
 private 
ResultSet result;
 private 
Statement statement;
  
 public 
Conector() 
 {
  
inicializarConexion();
 }
 
 private final 
void inicializarConexion()
 {      
  try 
  {
   Class.
forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
   
conn java.sql.DriverManager.getConnection("jdbc:sqlserver://10.10.1.12:1433;DatabaseName=pedidos","jon","jonathan"); //pedidos, jon, jonathan
   
statement conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVEResultSet.CONCUR_UPDATABLE);
  }
  catch (
SQLException e
  {
   
JOptionPane.showMessageDialog(null,e.getMessage()+". No se pudo accesar a la base de datos","Sin acceso, no se obtuvo conexion",JOptionPane.ERROR_MESSAGE);
  }  
  catch (
ClassNotFoundException e
  {
   
JOptionPane.showMessageDialog(null,e.getMessage()+". No se pudo establecer conexion con la base de datos","Sin conexion, el controlador no esta presente",JOptionPane.ERROR_MESSAGE);
  }
 } 
 
 public final 
ResultSet selectQuery(String querythrows SQLServerExceptionSQLException 
 
{
  
result statement.executeQuery(query);       
  return 
result;    
 }

 public final 
void IUD(String querythrows SQLServerExceptionSQLException 
 
{
  
statement.executeUpdate(query);         
 }

 public final 
void sp(String querythrows SQLServerExceptionSQLException 
 
{
  
statement.execute(query);         
 }
 
 protected final 
void close() throws SQLServerExceptionSQLException 
 
{
  if(
result != null)
   
result.close();
   
  if(
statement != null)
   
statement.close();
   
  if(
conn != null)
   
conn.close();     
 }

esta clase es la basica, por aqui empece con base de datos, la actual que uso esta mas choncha pero ps esa cuando le entiendan bien a esta ok?

pero ps les paso el dato, una de las formas mas optimas de establecer conexion con bd es con PreparedStatements y con fuente de datos (DataSource) o si ya se quieren ir a lo pro ps ha usar persistencia (Hibernate, JPA)

espero que les sirva

[email protected] pa cualquier duda


"Un hombre no vale por cuanto sabe sino por a cuantos ha enseñado"
(jeje Ahi les dejo tambien la frase)