tengo una tabla creada en accees el campo de la foto es de tipo ObjetoOle y los demas son normales y el codigo de java tienes varioas campos de texto y varios botones los cuales son:
consulta,modifica, elimina, etc.
debo cargar una foto cuando consulte uno de los Id ingresados
me ayudan a cargar la foto para cada ID INGRESADO GRACIAS
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import java.sql.*;
import java.awt.Image;
import javax.imageio.ImageIO;
import javax.imageio.ImageReadParam;
import javax.imageio.ImageReader;
import javax.imageio.stream.ImageInputStream;
class empleados extends JFrame
{
JLabel label1,label2,label3;
JTextField tdocid,tnom,tannonac;
JButton botoncapturar, botonconsultar, botonmodificar, botoncerrar,
botoneliminar, botonprimer, botonanterior,botonsiguiente,
botonultimo;
String url,driver,cadena,foto;
Connection db;
Statement sql;
ResultSet rs;
public empleados()
{
getContentPane().setLayout(null);
setTitle("DATOS PERSONALES"); setSize(1000,600);/*Ancho, Alto*/
label1= new JLabel("DOC. DE IDENTIDAD:");
label1.reshape(10,40,200,30);
/* COLI,FILI, ancho izq A der, ancho arriba a abajo */
getContentPane().add(label1);
tdocid=new JTextField();
tdocid.reshape(400,40,80,30);
getContentPane().add(tdocid);
label2=new JLabel("NOMBRE:");
label2.reshape(10,90,200,30);
getContentPane().add(label2);
tnom= new JTextField();
tnom.reshape(400,90,250,30);
getContentPane().add(tnom);
label3= new JLabel("AÑO NACIMIENTO:");
label3.reshape(10,140,200,30);;
getContentPane().add(label3);
tannonac= new JTextField();
tannonac.reshape(400,140,80,30);
getContentPane().add(tannonac);
botoncapturar= new JButton("CAPTURAR");
botoncapturar.reshape(20,300,120,30);
getContentPane().add(botoncapturar);
botonmodificar= new JButton("MODIFICAR");
botonmodificar.reshape(150,300,120,30);
getContentPane().add(botonmodificar);
botonconsultar= new JButton("CONSULTAR");
botonconsultar.reshape(280,300,120,30);
getContentPane().add(botonconsultar);
botoneliminar= new JButton("ELIMINAR");
botoneliminar.reshape(410,300,120,30);
getContentPane().add(botoneliminar);
botoncerrar=new JButton("SALIR");
botoncerrar.reshape(710,300,80,30);
getContentPane().add(botoncerrar);
botonprimer= new JButton("PRIMER");
botonprimer.reshape(20,400,120,30);
getContentPane().add(botonprimer);
botonanterior= new JButton("ANTEROR");
botonanterior.reshape(150,400,120,30);
getContentPane().add(botonanterior);
botonsiguiente= new JButton("SIGUIENTE");
botonsiguiente.reshape(280,400,120,30);
getContentPane().add(botonsiguiente);
botonultimo= new JButton("ULTIMO");
botonultimo.reshape(410,400,120,30);
getContentPane().add(botonultimo);
conexion();
botoncapturar.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
ingresar();
}
}
);
botonconsultar.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
consultar();
}
}
);
botonmodificar.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
modificar();
}
}
);
botoneliminar.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
eliminar();
}
}
);
botoncerrar.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
System.exit(0);
}
}
);
botonprimer.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
primer();
}
}
);
botonanterior.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
anterior();
}
}
);
botonsiguiente.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
siguiente();
}
}
);
botonultimo.addActionListener
(
new ActionListener()
{
public void actionPerformed(ActionEvent evt)
{
ultimo();
}
}
);
}
public void conexion()
{
/*Por Origenes de datos ODBC en Panel de Control-Herramientas
*Administrativas u ODBC se configura para la siguiente línea */
url="jdbc:odbc:empleados";
driver="sun.jdbc.odbc.JdbcOdbcDriver";
db=null;
try
{
Class.forName(driver).newInstance();
}
catch (Exception e) { }
try
{
db=DriverManager.getConnection(url,"","");
sql=db.createStatement();
JOptionPane.showMessageDialog(null,"LA CONEXION SE HA REALIZADO",
"conexion",JOptionPane.INFORMATION_MESSAGE);
cadena="select * from datospers";
rs=sql.executeQuery(cadena);
}
catch(SQLException e) { }
}
public void ingresar()
{
try
{
cadena="select * from datospers where docid="+tdocid.getText()+"";
rs=sql.executeQuery(cadena);
if(rs.next())
{
JOptionPane.showMessageDialog(null, "NO SE PUEDE GUARDAR(REPETIDO)",
"informacion de Datospers", JOptionPane.INFORMATION_MESSAGE);
}
else
{
int adocid=(new Integer(tdocid.getText())).intValue();
String anom=tnom.getText();
int aannonac=(new Integer(tannonac.getText())).intValue();
cadena="insert into datospers values("
+adocid+",'"+anom+"',"+aannonac+")";
JOptionPane.showMessageDialog(null, cadena,
"informacion de Datospers",JOptionPane.INFORMATION_MESSAGE);
tdocid.setText("");
tnom.setText("");
tannonac.setText("");
rs=sql.executeQuery(cadena);
}
}
catch(SQLException e){ }
}
public void consultar()
{
String auxiliar;
int aux1;
auxiliar=JOptionPane.showInputDialog("DOCUMENTO IDENT. A CONSULTAR:");
aux1=Integer.parseInt(auxiliar);
buscando(aux1);
}
public void buscando(int aux1)
{
try
{
cadena="select * from datospers ";
rs=sql.executeQuery(cadena);
int encuentra =0;
while (encuentra != 1)
{
if (rs.next())
{
int adocid=rs.getInt("docid");
if(adocid == aux1)
{
String anom=rs.getString("nom");
String aannonac=rs.getString("annonac");
tdocid.setText(String.valueOf(adocid));
tnom.setText(anom);
tannonac.setText(aannonac);
encuentra=1;
}
}
else
{
JOptionPane.showMessageDialog(null, "NO ENCUENTRA LO CONSULTADO",
"informacion de personas", JOptionPane.INFORMATION_MESSAGE);
tdocid.setText("");
tnom.setText("");
tannonac.setText("");
encuentra=1;
}
}
}
catch(SQLException e) { }
}
public void modificar()
{
String auxiliar;
int aux1=0;
//aux1 debe inicializarse con un valor y declararse antes del try
try
{
auxiliar=tdocid.getText();
aux1= Integer.parseInt(auxiliar);
//Las anteriores 4 lineas son para luego buscar registro
cadena="select * from datospers where docid="+tdocid.getText()+"";
rs=sql.executeQuery(cadena);
if (rs.next()) /*Si hay datos */
{
cadena="update datospers set nom='"+tnom.getText()+"',"+
"annonac="+tannonac.getText()+" "+
"where docid="+tdocid.getText()+"";
JOptionPane.showMessageDialog(null, "REGISTRO MODIFICADO: "+cadena,
"informacion delpersonal", JOptionPane.INFORMATION_MESSAGE);
rs=sql.executeQuery(cadena);
//Después de ejecutar update de línea anterior, pasa al catch
}
}
catch(SQLException e)
{
buscando(aux1);
}
}
public void eliminar()
{
try
{
cadena="delete * from datospers where docid="+tdocid.getText()+"";
JOptionPane.showMessageDialog(null, "REGISTRO ELIMINADO"+cadena,
"informacion delpersonal", JOptionPane.INFORMATION_MESSAGE);
rs=sql.executeQuery(cadena);
}
catch(SQLException e)
{
primer();
}
}
public void primer()
{
try
{
cadena="select * from datospers";
rs=sql.executeQuery(cadena);
if (rs.next()) //Si hay datos
{
/* Las 3 líneas siguientes,va con comillas los nombres de campos de cada
* tabla de la base de datos(Verifique bien en caso de no desplegarlos)*/
int adocid=rs.getInt("docid");
String anom=rs.getString("nom");
String aannonac=rs.getString("annonac");
tdocid.setText(String.valueOf(adocid));
tnom.setText(anom);
tannonac.setText(aannonac);
}
else
{
JOptionPane.showMessageDialog(null, "NO HAY PRIMER REGISTRO",
"informacion de personas", JOptionPane.INFORMATION_MESSAGE);
tdocid.setText("");
tnom.setText("");
tannonac.setText("");
}
}
catch(SQLException e){ }
}
public void anterior()
{
String auxiliar;
int aux1=0;
int anteriorvalor;
//aux1 debe inicializarse con un valor y declararse antes del try
try
{
auxiliar=tdocid.getText();/*Toma valor del docid actual */
aux1= Integer.parseInt(auxiliar);
anteriorvalor= aux1;
cadena="select * from datospers ";
rs=sql.executeQuery(cadena);
int encuentra =0;
while (encuentra != 1)
{
if (rs.next())
{
int adocid=rs.getInt("docid");
if(adocid == aux1)
{
encuentra= 1;
buscando(anteriorvalor);
if (anteriorvalor == adocid)
{
JOptionPane.showMessageDialog(null, "NO HAY ANTERIOR",
"informacion de personas", JOptionPane.INFORMATION_MESSAGE);
}
}
else
{
anteriorvalor= adocid;
}
}
}
}
catch(SQLException e) { }
}
public void siguiente()
{
try
{
if (rs.next())
{
/* Las 3 líneas siguientes,va con comillas los nombres de campos de cada
* tabla de la base de datos(Verifique bien en caso de no desplegarlos)*/
int adocid=rs.getInt("docid");
String anom=rs.getString("nom");
String aannonac=rs.getString("annonac");
tdocid.setText(String.valueOf(adocid));
tnom.setText(anom);
tannonac.setText(aannonac);
}
else
{
JOptionPane.showMessageDialog(null, "NO HAY SIGUIENTE REGISTRO",
"informacion de personas", JOptionPane.INFORMATION_MESSAGE);
tdocid.setText("");
tnom.setText("");
tannonac.setText("");
}
}
catch(SQLException e){ }
}
public void ultimo()
{
try
{
cadena="select * from datospers ";
rs=sql.executeQuery(cadena);
int encuentra =0;
while (encuentra != 1)
{
if (rs.next())
{
int adocid=rs.getInt("docid");
String anom=rs.getString("nom");
String aannonac=rs.getString("annonac");
tdocid.setText(String.valueOf(adocid));
tnom.setText(anom);
tannonac.setText(aannonac);
}
else
{
encuentra=1;
}
}
}
catch(SQLException e) { }
}
public static void main (String args[])
{
new empleados().show();
}
}