/*
* Clase que me gestiona la conexion a la base de datos mysql
* */
import java.sql.*;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
public class BaseDatos {
Connection conexion = null;
public void conectar(){
try{
conexion = DriverManager.getConnection("jdbc:sqlserver://localhost:17015","sa","prueba");
//establece conexion
}
catch(SQLException ex){
JOptionPane.showMessageDialog(null, "No se logro establecer conexion con la base de datos","Error", JOptionPane.ERROR_MESSAGE);
}
catch(Exception e){
JOptionPane.showMessageDialog(null, "No se logro establecer conexion con la base de datos","Error", JOptionPane.ERROR_MESSAGE);
}
}
public ResultSet consultar(String sql){
//Establecer Conexion.
this.conectar();
ResultSet rs = null;
Statement sentencia = null;
try {
sentencia = conexion.createStatement();
rs = sentencia.executeQuery(sql);
}
catch(SQLException ex){
JOptionPane.showMessageDialog(null, "No logro ejecutar Correctamente la consulta","Error", JOptionPane.ERROR_MESSAGE);
}
catch(Exception e){
JOptionPane.showMessageDialog(null, "No Logro ejecutar Correctamente la consulta","Error", JOptionPane.ERROR_MESSAGE);
}
return rs;
}
public boolean validaLoginUser (String id, String passwd){
boolean respuesta = false;
ResultSet rs = null;
String sql = "SELECT * FROM fnd_users Where usuario = '"+id+"' and passwd = '"+passwd+"'";
rs = this.consultar(sql);
try{
while(rs.next()){
respuesta = true;
}
return respuesta;
}
catch(SQLException ex){
JOptionPane.showMessageDialog(null, "No se logro establecer conexion con la base de datos","Error", JOptionPane.ERROR_MESSAGE);
}
catch(Exception ee){
JOptionPane.showMessageDialog(null, "No se logro establecer conexion con la base de datos","Error", JOptionPane.ERROR_MESSAGE);
}
return respuesta;
}
public Integer getUserID (String id){
Integer respuesta=-1 ;
ResultSet rs = null;
String sql = "SELECT id FROM fnd_users Where usuario = '"+id+"'";
rs = this.consultar(sql);
try{
while(rs.next()){
respuesta = Integer.parseInt(rs.getString("id"));
}
return respuesta;
}
catch(SQLException ex){
JOptionPane.showMessageDialog(null, "No se logro establecer conexion con la base de datos","Error", JOptionPane.ERROR_MESSAGE);
}
catch(Exception ee){
JOptionPane.showMessageDialog(null, "No se logro establecer conexion con la base de datos","Error", JOptionPane.ERROR_MESSAGE);
}
return respuesta;
}
public boolean validaRegistracion (String id){
boolean respuesta = false;
ResultSet rs = null;
String sql = "SELECT * FROM fnd_users Where usuario = '"+id+"'";
rs = this.consultar(sql);
try{
while(rs.next()){
respuesta = true;
}
return respuesta;
}
catch(SQLException ex){
JOptionPane.showMessageDialog(null, "No se logro establecer conexion con la base de datos","Error", JOptionPane.ERROR_MESSAGE);
}
catch(Exception ee){
JOptionPane.showMessageDialog(null, "No se logro establecer conexion con la base de datos","Error", JOptionPane.ERROR_MESSAGE);
}
return respuesta;
}
public void registrarse (String id, String passwd){
this.conectar();
Statement sentencia = null;
String sql = "insert into fnd_users"
+ " values (NEXT VALUE FOR seq_user_id,'"+id+"','"+passwd+"',SYSDATETIME());";
try {
sentencia = conexion.createStatement();
sentencia.executeUpdate(sql);
}
catch(SQLException ex){
JOptionPane.showMessageDialog(null, "No logro ejecutar Insertar Correctamente la consulta","Error", JOptionPane.ERROR_MESSAGE);
}
catch(Exception e){
JOptionPane.showMessageDialog(null, "No logro ejecutar Insertar Correctamente la consulta","Error", JOptionPane.ERROR_MESSAGE);
}
}
public void insertarHistorial (String id, String personaje, int resultado, int puntaje){
this.conectar();
Statement sentencia = null;
int userID = getUserID(id);
String sql = "insert into fnd_history" +
" values ('"+userID+"','"+personaje+"','"+resultado+"','"+puntaje+"',SYSDATETIME());";
try {
sentencia = conexion.createStatement();
sentencia.executeUpdate(sql);
}
catch(SQLException ex){
JOptionPane.showMessageDialog(null, "No logro ejecutar Insertar Historial","Error", JOptionPane.ERROR_MESSAGE);
}
catch(Exception e){
JOptionPane.showMessageDialog(null, "No logro ejecutar Insertar Historial","Error", JOptionPane.ERROR_MESSAGE);
}
}
public void consultarHistorial (JTextArea jtf, String user){
this.conectar();
Statement sentencia = null;
jtf.setText(null);
jtf.append(" HISTORIAL " + "\n\n");
jtf.append(" Historial Del Usuario: " +user.toUpperCase() + "\n");
jtf.append(" -----------------------------------------------" + "\n");
String pganadas="0",pperdidas="0",pempate="0",ptotal="0";
jtf.append(" Historial como Pacman" +"\n");
jtf.append(" -----------------------------------------------" + "\n");
/* Consulto Historal Pacman*/
try {
sentencia = conexion.createStatement();
ResultSet rs = sentencia.executeQuery("Select * from fnd_history_p Where id = (Select id from fnd_users where usuario = '"+user.trim()+"');");
while (rs.next()){
if (rs.getString("resultado").equals("1")){ // Paridas Ganadas
pganadas = rs.getString("cantidad");
ptotal = rs.getString("puntaje");
}
if (rs.getString("resultado").equals("0")) // Partidas Empate
pperdidas = rs.getString("cantidad");
if(rs.getString("resultado").equals("2")) // Partidas Perdidas
pempate = rs.getString("cantidad");
}
}
catch(SQLException ex){
//JOptionPane.showMessageDialog(null, "No logro ejecutar Insertar Correctamente la consulta","Error", JOptionPane.ERROR_MESSAGE);
jtf.append("No logro ejecutar Consultar Correctamente la consulta");
}
catch(Exception e){
//JOptionPane.showMessageDialog(null, "No logro ejecutar Insertar Correctamente la consulta","Error", JOptionPane.ERROR_MESSAGE);
jtf.append("No logro ejecutar Consultar Correctamente la consulta");
}
jtf.append( " Partidas Ganadas : " + pganadas +"\n" +
" Partidas Perdidas: " + pperdidas +"\n" +
" Partidas Empatadas: " + pempate +"\n" +
" Puntaje Total: " + ptotal + "\n");
jtf.append(" -----------------------------------------------"+ "\n");
pganadas="0";
pperdidas="0";
pempate="0";
ptotal="0";
jtf.append(" Historial como Fantasma" +"\n");
jtf.append(" -----------------------------------------------" + "\n");
/* Consulto Historal Pacman*/
try {
sentencia = conexion.createStatement();
ResultSet rs = sentencia.executeQuery("Select * from fnd_history_f Where id = (Select id from fnd_users where usuario = '"+user.trim()+"');");
while (rs.next()){
if (rs.getString("resultado").equals("1")){ // Paridas Ganadas
pganadas = rs.getString("cantidad");
ptotal = rs.getString("puntaje");
}
if (rs.getString("resultado").equals("0")) // Partidas Empate
pperdidas = rs.getString("cantidad");
if(rs.getString("resultado").equals("2")) // Partidas Perdidas
pempate = rs.getString("cantidad");
}
}
catch(SQLException ex){
//JOptionPane.showMessageDialog(null, "No logro ejecutar Insertar Correctamente la consulta","Error", JOptionPane.ERROR_MESSAGE);
jtf.append("No logro ejecutar Consultar Correctamente la consulta");
}
catch(Exception e){
//JOptionPane.showMessageDialog(null, "No logro ejecutar Insertar Correctamente la consulta","Error", JOptionPane.ERROR_MESSAGE);
jtf.append("No logro ejecutar Consultar Correctamente la consulta");
}
jtf.append( " Partidas Ganadas : " + pganadas +"\n" +
" Partidas Perdidas: " + pperdidas +"\n" +
" Partidas Empatadas: " + pempate +"\n" +
" Puntaje Total: " + ptotal + "\n");
jtf.append(" -----------------------------------------------");
}
}
No hay comentarios:
Publicar un comentario