Aqui unos Ejemplos de Consulta, para los que no estan familiarizados con SQL
SELECT * FROM cancion
* SELECCIONA TODAS LAS FILAS DE LA TABLA cancion
SELECT * FROM cancion WUERE Nombre LIKE '%Let it be%'
* CON FILTRO "Let it be" EN LA COLUMNA Nombre
SELECT * FROM cancion WUERE Autor LIKE '%Lily%'
* CON FILTRO "Lily" EN LA COLUMNA Autor
* ETC.
ATENCION LA BASE DE DATOS DE ESTE EJEMPLO SE LLAMA "musica.mdb" Y TIENE COMO UNICA TABLA "cancion" COMO EN LA IMAGEN MAS ABAJO, Y ESTE ARCHIVO DEBE ESTAR EN LA CARPETA DEL PROYECTO PARA QUE ESTE EJEMPLO FUNCIONE, Y SI TIENEN SU PROPIO BASE DE DATOS ACCESS TBN DEBE DE ESTAR EN LA CARPETA DEL PROYECTO.
- RESULTADO
- COD. FUENTE
/** * * E-Mail : shamirdhc31@gmail.com * Blog : http://javadhc.blogspot.com * */ import java.awt.event.*; import java.sql.*; import javax.swing.*; import javax.swing.table.DefaultTableModel; import java.awt.*; public class ConexionAccessSencillo extends JFrame implements ActionListener { public JScrollPane PanelDeslizador; public JTable MiTabla = new JTable(); public JButton btnCosulta = new JButton("Nueva Consultar"); public ConexionAccessSencillo() { super("CONEXION A BD ACCESS SENCILLO"); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setSize(600,530); FlowLayout Distribuidor = new FlowLayout(FlowLayout.CENTER,10,10); this.setLayout(Distribuidor); this.btnCosulta.addActionListener(this); this.CargarTabla(); this.PanelDeslizador = new JScrollPane(this.MiTabla); this.add(this.PanelDeslizador); this.add(this.btnCosulta); } public void actionPerformed(ActionEvent e) { this.CargarTabla(); } //-- CREA UNA CONEXION CON LA BASE DE DATOS CUYO RESULTADO ES "INSTRUCCION" public Statement CrearPuenteBD() { Connection CanalBD; Statement Instruccion = null; String NombreBD = "musica.mdb"; //-- CAMBIA POR EL NOMBRE DE TU BD String DireccionBD = System.getProperty("user.dir") + "/" + NombreBD; String ConexionBD = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=" + DireccionBD; try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); CanalBD = DriverManager.getConnection(ConexionBD); Instruccion = CanalBD.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); } catch(Exception SQLE) { JOptionPane.showMessageDialog(null,"ERROR EN LA CONEXION CON BD\nERROR : " + SQLE.getMessage()); System.exit(0); } return Instruccion; } //-- REALIZA LA CONSULTA CON LA INSTRUCCION SQL Y LUEGO SE LLENA LA TABLA public void CargarTabla() { String SentenciaSQL; SentenciaSQL = JOptionPane.showInputDialog(null,"INGRESE LA SENTENCIA SQL"); //-- SE HACE LA CONSULTA, Y LA TABLA SE LLENA CON EL MODELO DE TABLA this.MiTabla.setModel(this.ConsultarBD(SentenciaSQL)); this.MiTabla.setEnabled(false); } //-- DEFAULTTABLEMODEL ES EL MODELO DE TABLA QUE LUEGO SE AGREGARA A LA TABLA FINAL public DefaultTableModel ConsultarBD(String SentenciaSQL) { ResultSet Resultado; Statement Instruccion = this.CrearPuenteBD(); //-- PONLE LOS NOMBRES QUE QUIERAS A TUS COLUMNAS //-- EL NUMERO DE NOMBRES QUE PONGAS ES DE ACUERDO A LA //-- CANTIDAD DE COLUMNAS QUE TENGA TU BD //-- SI SON 7 COLUMNAS, PONLE 7 NOMBRES String[] Titulo = {"ID CANCION","NOMBRE","AUTOR","ALBUM"}; //-- CAMBIA DE ACUERDO AL NUMERO DE COLUMNAS DE TU BD (String[COLUMNAS]) //-- SI SON 7 COLUMNAS SERA String[] Registro = new String[7]; String[] Registro = new String[4]; DefaultTableModel ModeloTabla = new DefaultTableModel(null,Titulo); try { //-- SE EJECUTA LA INSTRUCCION, Y EL RESULTADO SE CARGA //-- A ResultSet (Resultado) Resultado = Instruccion.executeQuery(SentenciaSQL); //-- LOS RESULTADOS SON DE FILA EN FILA //-- CON Resultado.next() SE VA VIENDO CADA FILA //-- HASTA QUE ESTE VOTA FALSO O QUE YA NO HAY MAS FILAS DE DATOS while(Resultado.next()) { //-- LOS DATOS DE CADA FILA SE GUARDAN EN UN ARRAY //-- PONLE DE ACUERDO A LOS NOMBRES VERDADEROS DE LAS COLUMNAS //-- DE TU BD EN LA PARTE QUE DICE getString("Id_cancion") //-- SI SON 7 COLUMNAS ENTONCES EL ULTIMO REGISTRO SERA //-- ASI => Registro[7] = Resultado.getString("NOMBRE COLUMNA 7"); Registro[0] = Resultado.getString("Id_cancion"); Registro[1] = Resultado.getString("Nombre"); Registro[2] = Resultado.getString("Autor"); Registro[3] = Resultado.getString("Album"); //-- CADA VEZ QUE TERMINA DE AGREGAR UNA FILA O ARRAY //-- SE AGREGA A ESTE MODELO DE TABLA ModeloTabla.addRow(Registro); } } catch (SQLException SQLE) { JOptionPane.showMessageDialog(null,"ERROR AL CARGAR LOS DATOS DE LA BD \n ERROR : " + SQLE.getMessage()); } return ModeloTabla; } public static void main(String[] args) { ConexionAccessSencillo MiConexion = new ConexionAccessSencillo(); MiConexion.setVisible(true); } }
DALE CLICK EN LA IMAGEN PARA BAJARTE EL PROYECTO CON LOS 2 EJERCICIOS
IMPORTANTE : "TODOS LOS CODIGOS INDICADOS AQUI SON ESCRITOS POR MI PERSONA, ASI QUE CUALQUIER DUDA O EJERCICIO QUE NO PUEDAN RESOLVER, NO DUDEN EN MANDARME UN E-MAIL A MI CORREO"
shamirdhc31@gmail.com
ME PUEDES AYUDAR EN MI MAQUINA NO SE PUEDE CONECTAR -- ACCESS CON JAVA--- Y ESO QUE INTENTADO POR VARIOS CODIGOS Y METODOS; Y NO PUEDOOOO!!!!!!!
ResponderEliminarMI MAQUINA ES WINDOWS7 - 64 BITS