Please I need your help. I have developed a GUI application and I want to display only a singly record when I type the Matic Number in the textfield and click search. I have created the search botton and a textfield but it is not displaying the record of the student with the Matric Number when I click the search botton. can you help me? PLEASE!!!

this is my code:
[
package DataInfo;
import javax.swing.*;
import java.awt.*;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.AbstractTableModel;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.*;
import java.sql.*;
import java.util.*;
import javax.swing.table.*;
import java.awt.event.*;


public class Resources extends JPanel
{ // Opens class
private JTextField txtMatNumber;
private JButton btnSearch;
private DataEntryPanel fieldpanel;
private Connection dbconn;
Connection conn=null;

private MSaccessconn msconn;
public Resources() {
super(new GridLayout(0,1));
fieldpanel = new DataEntryPanel();

setLayout( new FlowLayout() );
add( new JScrollPane( fieldpanel ) );
Vector columnNames = new Vector();
Vector data = new Vector();
msconn= new MSaccessconn();

dbconn=msconn.getConnection();


try
{
String url = "jdbc dbc:StudentInfo";
Class.forName(
"sun.jdbc.odbc.JdbcOdbcDriver" );
conn = DriverManager.getConnection( url );
// Read data from a table

String sql = "select * from StudentInfo.mdb.accdb.Student ";
Statement stmt = dbconn.createStatement();
ResultSet rs = stmt.executeQuery( sql );
ResultSetMetaData md = rs.getMetaData();
int columns = md.getColumnCount();

// Get column names

for (int i = 1; i <= columns; i++)
{
columnNames.addElement( md.getColumnName(i) );
}

// Get row data

while (rs.next())
{
Vector row = new Vector(columns);

for (int i = 1; i <= columns; i++)
{
row.addElement( rs.getObject(i) );
}

data.addElement( row );
}

rs.close();
stmt.close();
conn.close();
}
catch(Exception e)
{
System.out.println( e );
}

// Create table with database data

JTable table = new JTable(data, columnNames)
{
public Class getColumnClass(int column)
{
for (int row = 0; row < getRowCount(); row++)
{
Object o = getValueAt(row, column);

if (o != null)
{
return o.getClass();
}
}

return Object.class;
}
};

table.setPreferredScrollableViewportSize(new Dimension(1050,550));
table.setFillsViewportHeight(true);
JScrollPane scrollPane = new JScrollPane( table );
add( scrollPane );

//JPanel buttonPanel = new JPanel();
// add( buttonPanel, BorderLayout.SOUTH );
}


class DataEntryPanel extends JPanel implements ActionListener {

JLabel lblMatNumber;

public DataEntryPanel(){
JPanel labelPanel = new JPanel();

labelPanel.setLayout(
new GridLayout(5, 5 ) );
lblMatNumber = new JLabel( "Matric Number: (Search)", 0 );
labelPanel.add( lblMatNumber);

JPanel fieldPanel = new JPanel();
fieldPanel.setLayout(
new GridLayout( 5, 5 ) );
txtMatNumber = new JTextField(20);
fieldPanel.add( txtMatNumber );

lblMatNumber.setLabelFor( txtMatNumber );

JPanel btnPanel= new JPanel();
btnPanel.setLayout(new FlowLayout());
// btnPanel.setLayout(new FlowLayout());
JPanel entryPanel = new JPanel();
// entryPanel.setLayout(new GridLayout(1,2));
entryPanel.add( labelPanel );
entryPanel.add( fieldPanel );

btnSearch = new JButton("Search");
btnSearch.addActionListener( this );

btnPanel.add(btnSearch );

setLayout( new BorderLayout());
add("Center", entryPanel);
add("West", btnPanel);

}

public void actionPerformed( ActionEvent e){

if(e.getSource()==btnSearch)

searchRecord();


}




}

public void searchRecord(){
Vector columnNames = new Vector();
Vector data = new Vector();
if(txtMatNumber.getText() !="")
{
String sql="select * from StudentInfo.mdb.accdb.Student where MatNumber='" + txtMatNumber.getText() + "'";
try {
String url = "jdbc dbc:StudentInfo";
Class.forName(
"sun.jdbc.odbc.JdbcOdbcDriver" );
conn = DriverManager.getConnection( url );
Statement stmt = dbconn.createStatement();
ResultSet rs = stmt.executeQuery( sql );
ResultSetMetaData md = rs.getMetaData();
int columns = md.getColumnCount();

// Get column names

for (int i = 1; i <= columns; i++)
{
columnNames.addElement( md.getColumnName(i) );
}

// Get row data

while (rs.next())
{
Vector row = new Vector(columns);

for (int i = 1; i <= columns; i++)
{
row.addElement( rs.getObject(i) );
}

data.addElement( row );
}

rs.close();
stmt.close();
conn.close();
}
catch(Exception e)
{
System.out.println( e );

}
JTable table = new JTable(data, columnNames)
{
public Class getColumnClass(int column)
{
for (int row = 0; row < getRowCount(); row++)
{
Object o = getValueAt(row, column);

if (o != null)
{
return o.getClass();
}
}

return Object.class;
}
};

table.setPreferredScrollableViewportSize(new Dimension(1000,1000));
table.setFillsViewportHeight(true);
JScrollPane scrollPane = new JScrollPane( table );
add( scrollPane );

//JPanel buttonPanel = new JPanel();
//add( buttonPanel, BorderLayout.SOUTH );




}

/* public static void main(String[] args)
{
Resources frame = new Resources();
//frame.setDefaultCloseOperation( EXIT_ON_CLOSE );
frame.pack();
frame.setVisible(true);
}*/





}
}

]